docker本地镜像推送到私有库
1、下载镜像Docker Registry
docker pull registry
2、运行私有库Registry
运行私有库Registry,相当于本地有个私有Docker hub
docker run -d -p 5000:5000 -v /app/registry/:/tmp/registry --privileged=true registry
3、运行centos镜像
运行在《docker本地镜像发布到阿里云》篇中创建的镜像,也可以新拉取一个镜像
可以看到,这时是没有ifconfig命令的
4、安装net-tools
yum -y install net-tools.x86_64
5、测试ifconfig
6、创建本地镜像
docker commit -m="安装net-tools后的centos" -a="yyb" 7f1afa8d2496 mycentos:1.2
7、停止运行容器
docker stop 容器ID
docker stop 7f1afa8d2496
8、运行新镜像
运行新镜像进行测试
成功。然后输入命令停止运行。
9、curl验证私服库上有什么镜像(可跳过)
curl -XGET http://127.0.0.1:5000/v2/_catalog
10、将新镜像修改为符合私服规范的Tag
docker tag mycentos:1.2 127.0.0.1:5000/mycentos:1.2
11、修改配置文件使之支持http
找到/etc/docker/daemon.json文件,修改
加入"insecure-registries": [“ip:port”]
注:docker默认不允许http方式推送镜像,通过配置选项来取消这个限制。【修改完后如果不生效,建议重启docker】
12、推送到私服库
docker push 127.0.0.1:5000/mycentos:1.2
推送完后,再次验证私服库,是否推送成功。
13、pull到本地运行
先把之前的本地镜像mycentos1.2删除
再拉取私服库上的镜像
docker pull 127.0.0.1:5000/mycentos:1.2
14、运行镜像,测试ifconfig
成功!