【Docker】5. 常用命令—鏡像命令

學習命令,官方文檔千萬別忘記了,不會的就到這裡來查。

一、幫助命令

1.顯示docker哪些命令

docker --help

另外,也可以查看具體命令的用法,比如我想知道命令docker images是幹嘛的,怎麼用。

docker images --help

2.顯示docker的版本資訊

docker version

3.顯示docker的系統資訊

包括鏡像和容器的數量等。

docker info

二、鏡像命令 docker images

1.查看本地主機上的所有鏡像

docker images

結果第一行有幾個欄位,分別表示:

  • REPOSITORY:鏡像的倉庫源,下載的時候通過這個名字下載,運行的時候也通過這個名字運行。
  • TAG:鏡像的標籤,顯示版本。
  • IMAGE ID:鏡像的 id。
  • CREATED:鏡像的創建時間。
  • SIZE:鏡像的大小。

常用可選項

Options:
  -a, --all             Show all images (default hides intermediate images)
  -q, --quiet           Only show image IDs
  • -a:列出所有鏡像。
  • -q:只顯示鏡像id。

除了在網頁的鏡像倉庫里搜索,還可以用命令行搜索。
比如搜索mysql的鏡像。

docker search mysql

結果返回的是一個列表,可以看到符合搜索關鍵字的鏡像資訊:名稱、描述、星數、是否官方等。

常用可選項

  -f, --filter filter   Filter output based on conditions provided

可以加些過濾條件,比如我只搜索mysql相關 stars數量3000以上的。

3.下載鏡像 docker pull

下載我剛才搜索到的mysql鏡像。

docker pull mysql

最後的真實地址,其實就是命令docker pull mysql等價於docker pull docker.io/library/mysql:latest

指定鏡像版本下載

docker pull mysql:5.7

注意,這裡的5.7一定是鏡像里存在的版本才可以。

注意看結果里,更上面的不同,出現了Already exists,這裡說明了上面的的幾個鏡像,我已經有了,不需要再重複下載了,可以共用。
極大節省資源,這也就是linux聯合文件系統的優勢。

再查看一下本地鏡像,mysql的2個下載的鏡像都有了,一個最新版,一個5.7。

4.刪除鏡像 docker rmi

根據鏡像id刪除指定。
現在刪除mysql5.7的鏡像,先查看到對應鏡像id,然後刪除。

docker rmi -f 2c9028880e58

可以看到,與mysql鏡像共用的文件是沒有刪除的。

刪除多個鏡像。

docker rmi -f id id id

全部刪除。

docker rmi -f $(docker images -aq)

隨著學習的深入,還會學習更多的命令。