Docker构建registry仓库

Docker客户端:10.10.7.217;Docker私有仓库服务器:10.10.7.219

1.在服务端10.10.7.219上拉取仓库镜像:registry
[root@localhost ~]# docker pull registry

2.在服务端10.10.7.219运行docker私有仓库
[root@localhost ~]# docker run -itd --restart=always --privileged=true --name registry -v /home/dockerData/registry:/var/lib/registry -p 5000:5000 registry:latest
如果成功执行,则表示我们的docker私有仓库搭建成功。

3.在客户端10.10.7.217制作镜像
以nginx为例,先把它拉取下来
[root@localhost ~]# docker pull nginx
给nginx镜像打个tag,表示新的版本
[root@localhost ~]# docker tag nginx 10.10.7.219:5000/nginx:latest

4.将新的nginx镜像上传到私有仓库
[root@localhost ~]# docker push 10.10.7.219:5000/nginx:latest
发现会报以下错误:
The push refers to a repository [10.10.7.219:5000/nginx]
Get https://10.10.7.219:5000/v1/_ping: http: server gave HTTP response to HTTPS client
原因是docker私有仓库服务器,默认是基于https传输的,所以我们需要在客户端10.10.7.217做相关设置,不使用https传输
[root@localhost ~]# vi /etc/docker/daemon.json
将下面的代码放进去保存并退出。
“insecure-registries”:[“10.10.7.219:5000”]
最终如下所示:
{
“registry-mirrors”: [“https://ukblsmil.mirror.aliyuncs.com”],
“insecure-registries”:[“10.10.7.219:5000”]
}
依次执行下面两条命令,重新启动docker:
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl restart docker
再次执行推送命令:
[root@localhost ~]# docker push 10.10.7.219:5000/nginx:latest

5.在私有仓库10.10.7.219查看上传的镜像
[root@localhost repositories]# ls /registry/docker/registry/v2/repositories
或者在客户端执行以下命令查看:
[root@localhost ~]# curl http://10.10.7.219:5000/v2/_catalog
会输出:
{“repositories”:[“nginx”]}

或者浏览器访问地址:http://10.10.7.219:5000/v2/_catalog,也会出现
{“repositories”:[“nginx”]}

Okay,到此我们的私有仓库就搭建完成了

感谢屏幕前你的浏览,希望可以帮助到你。我是运维界最会弹吉他的小飞。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值