千家信息网

2 docker镜像管理

发表于:2024-10-20 作者:千家信息网编辑
千家信息网最后更新 2024年10月20日,使用镜像时候的命名格式:REPOSITORY:TAG 如果不写tag,默认是latestrepository的格式:服务器IP:端口/分类/镜像名:tag 并不一定非得使用这种命名方式,只有我们和仓库
千家信息网最后更新 2024年10月20日2 docker镜像管理

使用镜像时候的命名格式:
REPOSITORY:TAG 如果不写tag,默认是latest
repository的格式:
服务器IP:端口/分类/镜像名:tag 并不一定非得使用这种命名方式,只有我们和仓库有关系时候,才会使用命名方式。
假如,我们需要把镜像推送到仓库里
如果只是本机使用,和仓库没有任何关系,和repository命名没有无所谓

给镜像重新命名,打标签tag:类似给一个文件做硬链接类似的道理,一个镜像可以有多个名字

docker tag docker.io/mysql  mysql[root@docker ~]# docker imagesREPOSITORY                    TAG                 IMAGE ID            CREATED             SIZEdocker.io/mysql               latest              b8fd9553f1f0        4 weeks ago         445 MBhub.c.163.com/public/centos   6.7-tools           b2ab0ed558bb        2 years ago         602 MB[root@docker ~]#[root@docker ~]# docker tag docker.io/mysql  mysql[root@docker ~]# docker imagesREPOSITORY                    TAG                 IMAGE ID            CREATED             SIZEdocker.io/mysql               latest              b8fd9553f1f0        4 weeks ago         445 MBmysql                         latest              b8fd9553f1f0        4 weeks ago         445 MBhub.c.163.com/public/centos   6.7-tools           b2ab0ed558bb        2 years ago         602 MB[root@docker ~]#

删除镜像:
docker rmi docker.io/mysql:latest
如果一个镜像有多个名字tag,只要还有tag存在,文件就还存在,如果所有名字被删除,文件才会被删除。
请不要使用docker.io/mysql,用163下载的,不然使用时候会有问题。

我们下载下来的镜像存在哪里?

检查发现,下载下来的镜像是被打散,存放在硬盘里面./var/lib/docker
镜像在硬盘里面如何存放,是由存储驱动决定的。
不管存储驱动。

如何备份/保存镜像?

docker save 镜像名 > 路径[root@docker ~]# docker imagesREPOSITORY                    TAG                 IMAGE ID            CREATED             SIZEdocker.io/mysql               latest              b8fd9553f1f0        4 weeks ago         445 MBmysql                         latest              b8fd9553f1f0        4 weeks ago         445 MBhub.c.163.com/library/mysql   latest              9e64176cd8a2        2 years ago         407 MBhub.c.163.com/public/centos   6.7-tools           b2ab0ed558bb        2 years ago         602 MB[root@docker ~]# docker save hub.c.163.com/library/mysql  > mysql.tar[root@docker ~]# lsanaconda-ks.cfg  initial-setup-ks.cfg  mysql.tar怎么调用备份镜像?docker load -i mysql.tar或者使用:docker load < mysql.tar[root@docker ~]# docker load -i mysql.tar295d6a056bfd: Loading layer [==================================================>] 129.2 MB/129.2 MB3b7c5f5acc82: Loading layer [==================================================>] 344.6 kB/344.6 kBda4155a7d640: Loading layer [==================================================>] 4.657 MB/4.657 MBdaf31ec3573d: Loading layer [==================================================>] 1.536 kB/1.536 kB904af8e2b2d5: Loading layer [==================================================>] 39.68 MB/39.68 MB2bee3420217b: Loading layer [==================================================>] 25.09 kB/25.09 kBe5de8ba20fae: Loading layer [==================================================>] 3.584 kB/3.584 kB9e615ff77b4f: Loading layer [==================================================>] 240.5 MB/240.5 MBfa9efdcb088a: Loading layer [==================================================>] 6.144 kB/6.144 kB3c376267ac82: Loading layer [==================================================>] 9.216 kB/9.216 kB8129a85b4056: Loading layer [==================================================>] 1.536 kB/1.536 kBLoaded image: hub.c.163.com/library/mysql:latest[root@docker ~]# docker imagesREPOSITORY                    TAG                 IMAGE ID            CREATED             SIZEmysql                         latest              b8fd9553f1f0        4 weeks ago         445 MBhub.c.163.com/library/mysql   latest              9e64176cd8a2        2 years ago         407 MBhub.c.163.com/public/centos   6.7-tools           b2ab0ed558bb        2 years ago         602 MB
0