天天看點

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