docker实用命令
images 相关:
- docker images :列出本机所有已安装镜像
docker image打包
由当前容器创建一个新的docker镜像命令为:docker commit CONTAINER new_image_name
执行docker ps -a
会看到本机中新多了一个名为new_image_name的镜像
执行docker save new_image_name > /tmp/image.tar
可将新创建的镜像打包为tar文件并存储于系统临时目录/tmp/下。docker rmi image_name
:删除镜像
container 相关:
- docker run : 基于某镜像创建一个新的容器并运行
示例:docker run -it --name my_container -v /home/my/project/in/local/machine/project/:/home/repository/project --net=host my_image /bin/bash
以命令行交互方式从my_image创建并运行容器my_container, -v 为指定目录映射,结构为-v <本机代码目录>:<容器内目录>,-v可在同一命令行中多次出现,以指定多个目录映射。 –net=host 为指定端口映射类型。
注:在macos下使用docker,–net=host无效,因为macos和linux环境的docker实现机制不同,在macos或windows系统上安装的docker依赖于其底层使用的virtual box等第三方虚拟机,所以若以–net=host的方式指定端口映射,实际是将docker内的端口全部映射到了其底层的virtual box虚拟机上,而非真正的本机。对于tcp连接可以使用-p 的方式指定要映射的端口或端口范围,udp连接不需要进行端口映射,外部其他机器设备即可访问docker内部。
-p举例:docker run -it --name my_container -p 3900:3900 my_image_name /bin/bash
或docker run -it --name my_container -p 3900-4100:3900-4100 my_image_id /bin/bash
第1 种方式为指定某个端口映射,第2种方式为指定端口映射范围。docker ps
:
列出当前正在运行的容器docker ps -a
:
列出本机所有容器,包含正在运行或已停止运行的容器。docker exec -it container_name /bin/bash
进行某个正在运行的容器内部,在通常情况下,在线上启动一个服务时,无须进入此容器内部,仅须在docker run 由镜像创建并启动某个容器,后面再跟上要传递(服务启动所须)的参数即可。而当需要在容器内部做某些修改,比如安装新的工具如ping等,则需要进入容器内部。docker rm container_name
删除容器container_name
- docker run : 基于某镜像创建一个新的容器并运行
来源:CSDN
作者:陈丰腾
链接:https://blog.csdn.net/chenFteng/article/details/70194991