? ? ? ?在本節中,我們將詳細介紹 Docker 鏡像的常用命令,幫助您更好地管理和操作鏡像。以下是核心命令及其功能說明:
1.使用"ls"查看鏡像列表
#查看現有的鏡像列表[root@docker01 ~]# docker images [root@docker01 ~]# docker image ls#僅查看鏡像的ID信息。[root@docker01 ~]# docker image ls#查看所有的鏡像,包括中間鏡像,尤其是在后期查看基于dockerfile的時候很有用呢[root@docker01 ~]# docker image ls -a
2.使用"pull"拉取鏡像
# image可以省略 docker pull -q nginx:1.20.1
# -q 不顯示下載過程
# nginx:1.20.1 鏡像:鏡像版本
[root@docker01 ~]# docker image pull -q nginx:1.20.1
3.使用"tag"為鏡像取別名
[root@zk52 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx 1.20.1 c8d03f6b8b91 3 years ago 133MB
# 為nginx:1.20.1 鏡像取別名 liux-nginx:v1,會創建一個新的tag
[root@zk52 ~]# docker image tag nginx:1.20.1 liux-nginx:v1
[root@zk52 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
liux-nginx v1 c8d03f6b8b91 3 years ago 133MB
nginx 1.20.1 c8d03f6b8b91 3 years ago 133MB
4.使用"save"導出鏡像的2種方式
#導出鏡像liux-nginx:v1到liux-nginx-v1.tar.gz
#以下兩種方式皆可
[root@docker01 ~]# docker image save -o liux-nginx-v1.tar.gz liux-nginx:v1
[root@docker01 ~]# docker image save liux-nginx:v1 > liux-nginx-v1.tar.gz
[root@docker01 ~]# ll
-rw------- 1 root root 137376256 May 14 10:58 liux-nginx-v1.tar.gz
5.使用"load"導入鏡像的2種方式
[root@docker01 ~]# docker load -i liux-nginx-v1.tar.gz
Loaded image: liux-nginx:v1
[root@docker01 ~]# docker load < liux-nginx-v1.tar.gz
#補充一個批量導入命令
[root@docker01 ~]# ls liux-docker*.tar.gz | xargs -i docker load -i {}
[root@docker01 ~]# for image_name in `ls liux-docker.*tar.gz`; do docker load -i ${image_name}; done
6.使用"rm"刪除鏡像
[root@docker01 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
liux-nginx v1 c8d03f6b8b91 3 years ago 133MB
nginx 1.20.1 c8d03f6b8b91 3 years ago 133MB
#刪除名稱為liux-nginx:v1鏡像
[root@docker01 ~]# docker image rm liux-nginx:v1
Untagged: liux-nginx:v1
[root@docker01 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx 1.20.1 c8d03f6b8b91 3 years ago 133MB
# -f 強制刪除 但有容器基于該鏡像啟動時刪除的只是鏡像名稱,并不會徹底刪除鏡像
[root@docker01 ~]# docker image rm -f liux-nginx:v1
#補充一個批量刪除鏡像
# docker image ls -aq 獲取鏡像id
[root@docker01 ~]# docker image rm `docker image ls -aq`
7.使用"inspect"查看鏡像的詳細信息
[root@docker01 ~]# docker inspect nginx:1.20.1
#過濾Id
[root@docker01 ~]# docker inspect -f "{{.Id}}" nginx:1.20.1
sha256:c8d03f6b8b915209c54fc8ead682f7a5709d11226f6b81185850199f18b277a2
#可以使用jq過濾指定信息
[root@docker01 ~]# yum -y install jq
[root@docker01 ~]# docker nginx:1.20.1 |jq .[].Id
8.使用"prune"移除所有沒有tag且未使用的鏡像
#移除所有沒有tag的鏡像,且該鏡像沒有被容器使用。使用-f選項可以不打印提示信息。
[root@docker01 ~]# docker image prune
WARNING! This will remove all dangling images.
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0B
[root@docker01 ~]# docker image prune -f
? ? ? ? 以上就是 Docker 鏡像常用命令的詳細介紹。如果還有未講解到的內容或任何疑問,歡迎隨時聯系小劉,小劉將為您提供在線支持。下一期我們將深入探討 Docker 容器的常用命令,敬請期待!