在 Docker 核心概念理解 一文中,我们知道 Docker容器 其实就是一个轻量级的沙盒,应用运行在不同的容器中从而实现隔离效果。容器的创建和运行是以镜像为基础的,容器可以被创建、销毁、启动和停止等。本文将介绍下容器的这些常用操作命令。
1、新建并运行容器
docker run 命令表示新建并运行容器,它等同于 docker create命令 + docker start命令 的融合。
docker run 命令的基本格式为:
docker run [设置参数] [镜像名/ID]
1
docker run 命令有许多可选的设置参数,这些设置参数主要用来设置容器的运行状态,通过 docker run --help 我们可以通过帮助指引来查看其支持哪些参数。这里介绍3个比较常用的参数:
-it:是 -i 和 -t 两个参数的融合体, -i 则让容器的标准输入保持打开;-t 则让Docker分配一个伪终端并绑定到容器的标准输入上。通俗地讲,-it 参数就是让 Docker 容器开启一个交互式操作的Shell 终端,这样我们就可以进入到容器内来操作它,类似于我们登录虚拟机一样。
-d:让容器在后台运行,在启动Nginx等中间件时比较有用。
--name:给容器命名,如果不设置,Docker 会随机分配一个名字
运行nginx和redis,通过-d参数使其在后台运行,运行ubuntu通过–name参数我们指定了容器名字为 my_ubuntu 并且 通过 -it 参数进入到ubuntu并开启Shell终端。
docker run -d nginx
docker run -d redis
docker run -it --name ubuntu my_ubuntu
1
2
3
另开启一个终端窗口,通过 docker ps 命令查看所有的容器及其运行状态。CONTAINER ID标识容器的唯一ID,IMAGE表示镜像名称,PORTS 表示使用端口,NAMES 是容器的名称,注意看,my_ubuntu是我们通过 --name 自定义命名的名称,其他的是Docker生成的名称。
执行 docker run -it --name my_ubuntu ubuntu 命令由于 -it 参数,会开启Shell终端,如下:
docker run -it --name my_ubuntu ubuntu
9dc05cf19a5745c33b9327dba850480dae80310972dea9b05052162e7c7f2763
root@7bcc1310c4b6:/#
1
2
3
4
2、进入容器
docker exec 命令可以进入到正在运行的容器中,执行容器中的另一个程序,docker exec 和 docker run 命令相似,只不过 docker exec 并不会创建新的容器了,因为容器已经创建过了。
docker exec 命令格式为:
docker run [设置参数] [镜像名/ID] [命令]
1
下面我们通过 docker ps 查看所有容器,然后通过 docker exec -it my_ubuntu sh 命令我们进入到 my_ubuntu命名的容器中,进入到容器中以后,我们就可以查看运行状态等信息了。
3、停止容器
docker stop 命令可以强制停止容器。docker stop 命令的格式为:
docker stop [容器名称/CONTAINER ID前三位字符]
1
我们可以通过容器名称停止,或者CONTAINER ID前三位字符也可以停止容器。
通过 docker stop my_ubuntu 停止 命名为 my_ubuntu 的容器,容器停止后,通过 docker ps 命令就查不到了。
通过 docker stop 67d 停止 CONTAINER ID 前三位字符的容器,这里也就是 redis ,容器停止后,通过 docker ps 命令就查不到了。
查看所有容器,包括运行和停止状态的。
通过 docker ps -a 命令,我们可以查看所有容器,包括运行和停止状态的。
docker ps -a
1
我们看到ubuntu 和 redis 已经停止了,nginx 还在运行中。
4、重启容器
1)docker start:启动一个停止的容器。同样可以通过容器名称和CONTAINER ID前三位字符来指定容器。
docker start my_ubuntu 这里我们通过容器名称启动已经停止的容器。
docker start 67d 通过容器CONTAINER ID前三位字符启动已经停止的容器。
2) docker restart:重启一个容器。
docker restart 可以重启一个容器,同样可以使用容器名称和容器CONTAINER ID前三位字符指定容器。
docker restart 67d
1
5、删除容器
docker rm 命令可以删除容器,注意删除容器前,需要先停止容器,否则会报错哦~
docker rm 命令 通过指定 CONTAINER ID前两位字符来删除指定容器。
这里我们 指定 CONTAINER ID前两位字符 67 来删除 redis 容器
docker rm 67
1
删除容器前,注意需要先停止容器哦~
————————————————
版权声明:本文为CSDN博主「涛声依旧叭」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/rongtaoup/article/details/131332638