沃梦达 / 编程技术 / 服务器 / 正文

docker多容器操作与强制删除容器的方法步骤

有时候我们会有很多已经停止的容器或者由于错误强制退出不能用的容器,那我们就需要删除了,下面这篇文章主要给大家介绍了关于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

输入完成就删除成功了。

总结

到此这篇关于docker多容器操作与强制删除容器的文章就介绍到这了,更多相关docker多容器操作与强制删除容器内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!

本文标题为:docker多容器操作与强制删除容器的方法步骤

基础教程推荐