1. 程式人生 > >6、docker鏡像相關操作命令

6、docker鏡像相關操作命令

test UNC 除了 ext e30 search 拉取 del 列表

1、列出本地鏡像
[root@dockeron68 ~]# docker images
技術分享圖片
REPOSITORY: 表示鏡像倉庫源(也就是鏡像的名字)
TAG: 鏡像的標簽
IMAGE ID: 鏡像ID
CREATED: 鏡像創建的時間
VIRTUAL SIZE: 鏡像大小
同一鏡像源可以有多個TAG,代表這個倉庫的不同版本,docker中使用REPOSITORY:TAG來定義不同的鏡像。
如果你不指定鏡像的版本標簽,例如你使用ubuntu,docker將默認使用ubuntu:latest鏡像

2、docker images的其他參數
[root@dockeron68 ~]# docker images -a #列出本地所有鏡像(含中間層鏡像)

[root@dockeron68 ~]# docker images -q #只列出鏡像ID(不抱哈中間層鏡像)
[root@dockeron68 ~]# docker images -qa #qa可以結合使用
[root@dockeron68 ~]# docker images --digests #顯示鏡像摘要信息,顯示信息會多出DIGEST這一列
[root@dockeron68 ~]# docker images --no-trunc #顯示完整的鏡像信息,IMAGE ID列會顯示的鏡像ID是非截斷的
[root@dockeron68 ~]# docker images --digests --no-trunc #--digests --no-trunc也可以結合使用

3、搜索鏡像
[root@dockeron68 ~]# docker search tomcat
docker search是去 https://hub.docker.com 查找鏡像,即便配置了阿裏雲鏡像加速器,也是去docker hub上查找。配置的阿裏雲鏡像加速,只有在拉取的時候才回去阿裏雲去拉取
技術分享圖片
NAME: 鏡像的名字
DESCRIPTIION: 鏡像的描述信息
STARS: star的復數,這一列表示了該鏡像受歡迎或者說收藏的數量
OFFICIAL:是否是官方鏡像
AUTOMATED:鏡像是否是自動構建的

4、docker search的其他參數
[root@dockeron68 ~]# docker search -s 30 tomcat #列出收藏數(喜好數)不小於30的鏡像,過濾掉那些不受歡迎的鏡像

[root@dockeron68 ~]# docker search --no-trunc tomcat #顯示完成描述信息
[root@dockeron68 ~]# docker search --automated tomcat #只列出自動構建的鏡像類型
[root@dockeron68 ~]# docker search -s 30 --no-trunc --automated tomcat #上面三個參數可以結合使用

5、拉取鏡像(下載鏡像)
[root@dockeron68 ~]# docker pull tomcat
docker pull tomcat等價於docker pull tomcat:latest,其中latest為標簽,如果鏡像名字後邊的標簽省略,則表示你要拉取的是最新版本的鏡像
技術分享圖片
從截圖中我們可以看到,我們拉取的鏡像版本為tomcat:latest,同時也可以看到,們在拉取tomcat的時候,拉取了很多東西,這是因為鏡像是分層的。拉取鏡像完成後可以使用docker images來查看鏡像

6、刪除一個鏡像
docker rmi 鏡像名字 | 鏡像ID

[root@dockeron68 ~]# docker rmi hello-world

Error response from daemon: Conflict, cannot delete 19b3f968b60c because the container f1040287fb72 is using it, use -f to force
Error: failed to remove images: [hello-world]

刪除出錯了,deamon返回了出錯信息,原因是container f1040287fb72 這在使用它,提示你可以使用-f強制刪除
[root@dockeron68 ~]# docker rmi -f hello-world

Untagged: hello-world:latest
Deleted: 19b3f968b60c5d8ccd301a63ddcdf94ba8ecd7e4df5002cca0f12f136239f8e0
Deleted: 74bc6c628a008492ac5b8ebf00c36fd72512e653606efb4f5209501747a9efb4

因為鏡像是多層的,所以鏡像刪除的時候開到被刪除了多個
再使用docker images查看,可以看到hello-world鏡像沒有了

7、刪除多個鏡像
[root@dockeron68 ~]# docker rmi -f hello-world nginx
要想同時刪除多個鏡像,只需要在docker rmi -f命令後加上多個鏡像的名字即可

[root@dockeron68 ~]# docker rmi -f hello-world nginx
Untagged: hello-world:latest
Deleted: 19b3f968b60c5d8ccd301a63ddcdf94ba8ecd7e4df5002cca0f12f136239f8e0
Deleted: 74bc6c628a008492ac5b8ebf00c36fd72512e653606efb4f5209501747a9efb4
Untagged: nginx:latest
Deleted: 58ad891ca57113f079c3e1dfded05596d9c872f5a7c7324da1ddca1d9f5da3b1
Deleted: 737b99470bcfbe49f64d1b8b5f62a7e74aedb15e3af8ae5329a204f676e8b332
Deleted: 87840be63b41cf898758b55d44e8a45f3c87f395fa18cf445dde4df82e4667fa
Deleted: 23fe9a6fb739a3ab3cf9fc9e7aff39c71e8ed56d3682b53b4f971b3048cd6021
Deleted: cd5bff5bfc8b3146d7386e7c92e262977e30c705cb2c3c859a32fcae243b59e3
Deleted: d2c1a74309fb4029bea18307b1fa8e1ba619f55a8fced4bfe6eb1b6d375dd1ca
Deleted: e7452d7ecf81fe07f9fb969591038d324bdc9e2c469234069d926f7976cc73e1
Deleted: 65384c160d5c820aac48ebc211b39371e8e1ab1b86f0369c3a2c90f1daedf68a
Deleted: 7905a4b7e8329186131f73ece726c2b22a1a6daae2efed5d087cb57aa18a500a
Deleted: 2557373f5bdd84caef5b158746171da599db3973485831129a04f0f9f786d1fa
[root@dockeron68 ~]# 

8、一次性刪除全部鏡像
[root@dockeron68 ~]# docker rmi -f $(docker images -qa)

6、docker鏡像相關操作命令