博主介绍

📢点击下列内容可跳转对应的界面,查看更多精彩内容!

🍎主页:​​水香木鱼​​
🍍专栏:​​docker​​


文章目录

简介:这是一篇有关【doker的多容器操作和强制删除容器的方法】的文章,博主用​​最精简的语言​​去表达给前端读者们。





创建多个容器

停止多个容器

删除多个容器

强制删除容器


1、创建多个容器

在WIndows环境下我们来作这个,先​​打开三个PowerShell窗口​​​,然后在每个窗口中输入创建容器的命令,这里​​以Nginx镜像为例​

docker container run nginx

然后再​​重新打开一个PowerShell窗口​​,输入查看命令,查看已经开启的容器。

docker container ls

可以看到现在已经有​​3个开启的容器​​了。

PS C:\Users\Administrator> 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_wright

2、停止多个容器

现在要把三个容器用一个命令停掉,笨的方法是​​直接加上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:\Users\Administrator> 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

输入完成就删除成功了。