天天看点

doker的多容器操作和强制删除容器的方法

博主介绍

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

🍎主页:​​水香木鱼​​

🍍专栏:​​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