[英]Docker: Show stopped Docker containers
我是 Docker 的新手,我想列出已停止的容器。
使用docker ps
:
sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
什么都沒有出現,因為我重新啟動了機器並且我沒有將它們配置為自動啟動容器。
所以當我嘗試運行一個容器時,它說:
sudo docker run -d -p 8080:80 --name=angular_moviemasher moviemasher/angular-moviemasher
docker: Error response from daemon: Conflict. The name "/angular_moviemasher" is already in use by container b4428b708711c15233f558e70f58cb7800e23c4a6a57534abfa5818912630a37. You have to remove (or rename) that container to be able to reuse that name..
See 'docker run --help'.
所以我想看看已經安裝了哪些Docker容器並啟動它們。
在帶有示例的文檔Docker Cheat Sheet 中,我只能找到如何顯示正在運行的容器的示例:
集裝箱信息
顯示正在運行的容器。 使用 -a 選項,它顯示正在運行和停止的容器。
碼頭工人
就像你說的docker ps -a
將顯示停止和運行的容器(所有容器)。 以下命令只會顯示已停止的容器。
docker ps -a | grep Exit
現在您可以在您的容器上執行docker logs container-id
以查看出了什么問題。
好吧,你給了自己答案:
集裝箱信息
顯示正在運行的容器。 使用-a選項,它顯示正在運行和停止的容器。
碼頭工人
所以試試
sudo docker ps -a
如果docker ps -a
在機器重新啟動后沒有顯示任何內容,請嘗試重新啟動 Docker 守護進程(有時我也會在關機后發生)。
僅顯示已停止容器的最佳方法是運行以下命令:
docker container ls -f status=exited -a
上面的答案中沒有提到的另一個選項是:
docker container list --all
它是在 Docker 1.13(2017 年 1 月)中添加的,似乎是推薦的語法:
在 Docker 1.13 中,我們重新組合了每個命令,使其位於與之交互的邏輯對象下。 例如 list 和 startof 容器現在是 docker 容器的子命令,而 history 是 docker 鏡像的子命令。
docker container list
docker container start
docker image history
這些更改讓我們清理了 Docker CLI 語法,改進了幫助文本並使 Docker 更易於使用。 舊的命令語法仍受支持,但我們鼓勵大家采用新語法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.