從命令列管理 Docker 容器的頂級技巧


Docker 的使用在近些年呈爆炸式增長,並且在未來幾年仍將持續增長。大多陣列織現在都已將(或正在將)他們的專案遷移到 Docker 容器。因此,僅僅掌握建立和維護 Docker 容器和映象的基礎知識已經不足以跟上如此巨大的技術變革的步伐。

透過單個命令列介面 (CLI) 管理大量的容器和映象似乎是一項繁瑣的任務,但是,憑藉適當的管理技能和 Docker CLI 命令的實踐經驗,這將變得易如反掌。

在本文中,我們將討論一些工具,這些工具將幫助您非常輕鬆地在單個站點管理所有 Docker 容器和映象,並且肯定會為您節省大量時間。

列出映象和容器

當一臺機器上執行許多映象和容器時,重要的是經常跟蹤它們的最新標籤、大小、ID 和其他特性,這將有助於您輕鬆管理它們。

以下命令可以幫助您做到這一點。

sudo docker images

上述命令列出了所有映象,以及它們的最新標籤、大小、ID 和建立日期。

建立映象後,如果您想知道系統中當前存在的容器列表,可以使用以下命令。

sudo docker ps

上述命令顯示所有正在執行的容器 ID、其對應的映象、建立日期、狀態等的列表。

如果您想要所有容器(無論是否正在執行)的列表,只需向上述命令新增一個選項。

sudo docker ps -a

使用別名節省時間

一些 Docker 命令可能難以記住,因為它們可能很長。您可以建立您自己的別名並將它們定義到您的 ~/.bashrc 檔案中。

示例

alias dl=’docker ps -l -q’
alias drm=’docker rm’
alias dps=’docker ps’

刪除容器和映象

要刪除特定容器,可以使用 `rm` 選項。此命令的語法為:

sudo docker rm YOUR_CONTAINER_ID

要查詢要刪除的容器的容器 ID,可以使用上面也討論過的命令。

sudo docker ps -a

如果容器正在執行,則需要先停止容器,然後才能使用以下命令將其刪除。

sudo docker stop YOUR_CONTAINER_ID

要刪除 Docker 映象,您首先需要刪除該特定映象的所有容器。之後,您可以使用以下命令刪除映象。

sudo docker rmi YOUR_IMAGE_ID

您可以使用上面也討論過的以下命令獲取特定映象的映象 ID。

sudo docker images

在互動式 shell 中執行容器

假設您已從 Docker Hub 拉取了一個 ubuntu 映象,使用以下命令。

sudo docker pull ubuntu

現在,您想在互動式 shell 中執行 ubuntu 容器。您可以使用以下命令來實現此目的。

sudo docker run -it ubuntu

您現在可以使用單獨的互動式命令 shell 訪問 ubuntu 映象。

嘗試刪除所有懸空卷

當您嘗試刪除容器時,與該容器關聯的卷也可能被刪除。這樣的卷稱為懸空卷。要查詢所有懸空卷的列表,請使用以下命令。

sudo docker volume ls -f dangling=true

發出上述命令後,您將找到所有懸空卷的列表,包括其驅動程式名稱和卷名稱(如果存在)。

要避免懸空卷,請使用 `-v` 標誌刪除容器。

sudo docker rm -v YOUR_CONTAINER_ID

一些重要命令

這是一個精選列表,其中包含一些與映象和 Docker 容器相關的最重要命令,如果您處理大量此類物件,這些命令將非常方便。

容器命令

  • 要列出當前在您的系統中執行的所有容器,請使用命令 `docker container ls`

  • 要強制停止正在執行的容器,請使用 `docker container kill container_id`

  • 要獲取特定正在執行的容器的詳細資訊,請使用 `docker inspect container_id`

映象命令

  • 要獲取所有本地映象的列表,請使用 `docker image ls`

  • 要刪除所有懸空映象,請使用 `docker image prune`

總而言之,這些是處理大量映象和容器時非常方便的頂級技巧列表,這些技巧肯定會幫助您有效地管理它們,從而節省大量時間。

更新於:2020年10月1日

230 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告