Docker创建镜像 并推拉Harbor

时间:2023-01-01 00:12:44
创建镜像

Docker创建镜像 并推拉Harbor

一、根据dockerfile创建镜像

文件详解

1、mkdir dockerfile/lib/centos7base/

创建目录

2、创建Dockerfile

vim Dockerfile

Docker创建镜像 并推拉Harbor

3、构建镜像

docker build -t wyxcentos7 .

过程解析
docker镜像是只读的,这里为什么能够在centos镜像的基础上进行自定义操作呢?
我们看一下docker的编译过程
Docker创建镜像 并推拉Harbor

编译的第一步(绿色边框)会复用之前已经存在的centos:7
重点是第二步
882832c2b8eb其实是在centos:7镜像的基础上生成的一个临时container的id
我们忽略vim的安装过程,跳到最后
Docker创建镜像 并推拉Harbor

最后根据临时生成的container来docker commit 生成镜像文件,最后删除临时container(对照博客开始的图示进行理解)
2、根据容器构建镜像

1、拉去一个镜像

docker run -it centos

(run =(pull start exec))

2、查看vim

Docker创建镜像 并推拉Harbor

3、安装一个vim

yum intall vim

Docker创建镜像 并推拉Harbor

4、退出容器

exit

Docker创建镜像 并推拉Harbor

5、提交容器

Docker创建镜像 并推拉Harbor

Docker创建镜像 并推拉Harbor

进入容器

docker exec -it 69d1 bash
退出
exit

推送镜像到harbor

1、打标签

docker tag wyxcentosvim:latest 192.168.31.101/library/wyxcentosvim:latest

2、推送

docker push wyxcentosvim:latest 192.168.31.101/library/wyxcentosvim:latest

docker push 192.168.31.101/library/wyxcentosvim:1.02

3、删除本地镜像

docker rmi .........

无法删除镜像multiple repositories

原因:对于被删除的ImageID,这里存在多个REPOSITORY名字引用。通过镜像名字删除。

https://blog.csdn.net/JackLiu16/article/details/80581709

4、拉取镜像

docker pull 192.168.31.101/library/wyxcentosvim:latest

Docker创建镜像 并推拉Harbor

推荐文章:https://www.jianshu.com/p/1409967439d6