简介:
这是一篇有关【doker的多容器操作和强制删除容器的方法】的文章,用最精简的语言去表达给前端读者们。
1、创建多个容器
在WIndows环境下我们来作这个,先打开三个PowerShell窗口,然后在每个窗口中输入创建容器的命令,这里以Nginx镜像为例
docker container run nginx然后再重新打开一个PowerShell窗口,输入查看命令,查看已经开启的容器。
docker container ls可以看到现在已经有3个开启的容器了。
PS C:UsersAdministrator> docker container ls CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 91cc350cc044 nginx “/docker-entrypoint.…” 6 minutes ago Up 6 minutes 80/tcp optimistic_kalam 24f7f578deff nginx “/docker-entrypoint.…” 6 minutes ago Up 6 minutes 80/tcp focused_lovelace 06fbdca5b9fb nginx “/docker-entrypoint.…” 7 minutes ago Up 7 minutes 80/tcp epic_wright2、停止多个容器
现在要把三个容器用一个命令停掉,笨的方法是直接加上ID或名字【不推荐】。
docker container stop <ID1 ID2 ID3>但如果你想想,比如这时候有100个容器,我们用这种方法就会非常麻烦。
这时候我们需要学一个新的查看命令,比如只查看现在所有容器的ID【推荐】,命令如下。
docker container ps -aq这样就打印出了所有容器的ID,这时候包括没有开启的。
91cc350cc044
24f7f578deff
06fbdca5b9fb
6fcbf0e96849有了这个命令之后,我们就可以作一个命令组合。
docker container stop $(docker container ps -qa)命令执行后,会返回给我们容器的编号,说明已经停止了。可以使用下面的命令再次查看。
docker container ls -a这时候就可以看到,所有容器不在是up状态了,而是exited状态。
**PS C:UsersAdministrator> docker container ls -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 91cc350cc044 nginx “/docker-entrypoint.…” 36 minutes ago Exited (0) 10 seconds ago optimistic_kalam 24f7f578deff nginx “/docker-entrypoint.…” 37 minutes ago Exited (0) 10 seconds ago focused_lovelace 06fbdca5b9fb nginx “/docker-entrypoint.…” 38 minutes ago Exited (0) 10 seconds ago epic_wright 6fcbf0e96849 nginx “/docker-entrypoint.…” 46 hours ago Exited (0) 46 hours ago great_raman**3、删除多个容器
会了停止多个容器,那删除多个容器就很简单了。
docker container rm $(docker container ps -aq)4、强制删除容器
正在运行的容器,是不可以直接删除的,会报错。我们来做个实验。
新建一个容器:
docker container run nginx然后新开一个PowerShell,直接使用rm命令删除。
docker container rm <ID or Image Name >这时候会直接报错。报错内容如下。
Error response from daemon: You cannot remove a running container 21d0ec08e126efe73482264a588a3169c9d5b2253e7d53657ab8ddcf0f8302ba. Stop the container before attempting removal or force remove
报错信息大体就是不能删除没有stop的容器
但这时候就是要删除,你可以使用强制删除命令怕【非必要情况下,谨慎使用!】进行删除。
docker container rm <ID or Image Name > -f输入完成就删除成功了。
暂无评论内容