拉取鏡像
$ docker pull imageName[:tag][:tag] tag 不寫時,拉取的 是 latest 的鏡像
查看鏡像
查看所有本地鏡像
docker images
or
docker images -a
查看完整的鏡像的數字簽名
docker images --digests
查看完整的鏡像ID
docker images --no-trunc
只查看所有的鏡像ID
docker images -q
只查看某個倉庫的鏡像
docker images repositoryName
只查看某個倉庫的某個版本的鏡像
docker images repositoryName:tag
過濾查看(了解即可)
# 查看 日期在 tomcat:8.5 之后的鏡像
docker images -f since=tomcat:8.5
# 查看 日期在 tomcat:8.5 之前的鏡像
docker images -f before=tomcat:8.5
# 查看 tomcat 倉庫的所有 版本的鏡像 : 但是只支持官方的鏡像
docker images -f reference=tomcat:*
查找鏡像
從 docker hub 官網查找(不能用)
由于國內網絡的問題,這個命令是不能用的
docker search repositoryName
指定國內鏡源像查找(可用)
docker.1ms.run
就是一個國內的鏡像加速地址,挺好用。
docker search docker.1ms.run/mysql
限制查詢的條數
--limit=N
選項 限制返回的條數
docker search --limit=5 docker.1ms.run/mysql
過濾搜索
-f is-official=true
: 過濾官方的鏡像
docker search -f is-official=true docker.1ms.run/mysql
-f stars=N
: 過濾 stars 數量超過N的
docker search -f stars=100 docker.1ms.run/mysql
-f is-automated=true
: 過濾自動構建的鏡像,過時的一個方法,不建議使用。
docker search -f is-automated=true docker.1ms.run/mysql
刪除鏡像
刪除鏡像
當刪除多個的時候,通過空格隔開即可
docker rmi repository:tag [其他的鏡像]
or
docker rmi imageId [其他的鏡像ID]
強制刪除
docker rmi -f repository:tag
or
docker rmi -f imageId
刪除所有鏡像
通過引用
docker images -q
命令的返回值,
實現刪除所有的鏡像。
docker rmi -f $(docker images -q)
刪除過程會提示刪除的鏡像分層。
導入導出鏡像
導出鏡像
就是把鏡像到處到一個 tar 的壓縮文件中,方便傳輸。
注意 : 不要使用 imageID ,存在 元數據丟失的問題,即還原后 沒有 鏡像的名稱和 tag 了。
# 語法格式
docker save -o targetName.tar repository:tag# 實際演示一個 : 把本地所有的鏡像都打包
docker save -o abc.tar mysql:8.0.41
導入鏡像
就是將 tar 文件解壓,還原成原來的鏡像。
# 語法格式
$ docker load -i targetName.tar# 實際演示一個
$ docker load -i abc.tar
查看鏡像的json文件內容
docker inspect mysql:8.0.41