Docker搭建Docker私库Registry

Docker搭建Registry私库

1.创建Docker挂载目录
mkdir /data/lib/registry
2.启动Docker镜像
// 启动Registry镜像,Docker会自动去hub.docker.com拉取registry:2镜像
docker run -d -p 5000:5000 --restart=always --name registry -v /data/lib/registry:/var/lib/registry registry:2

发布和拉取Registry镜像

1.从Docker Hub拉取一个镜像,也可以通过Dockerfile构建一个镜像
docker pull maven:3.6.3-jdk-14 // 示例镜像,可以是其他镜像
2.将镜像发布到Registry
docker tag maven:3.6.3-jdk-14 ip:5000/my-maven // 将ip改成registry ip
docker push ip:5000/my-maven // 将ip改成registry ip

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xLUowbwk-1588820009745)(./registry.png)]
发布镜像时产生了"http:server gave HTTP response to HTTPS client"错误,这是因为服务器是http协议,客户端是https协议,认为我们私有的registry是不可信任的,可以通过在daemon.json文件增加insecure-registries配置解决这个报错

// vim /etc/docker/daemon.json
{
    "registry-mirrors": ["https://registry.docker-cn.com"],
    "insecure-registries":["ip:5000"]
}

修改后,重新启动Docker

sudo service docker restart

重新发布镜像,便可发布成功了

可通过http://ip:5000/v2/_catalog 查看私库中的镜像

3.拉取镜像
docker image rm ip:5000/my-maven // 将ip改成registry ip,删除镜像,若与发布镜像的不在同一台服务器(不存在该镜像),则不需要这步
docker image rm maven:3.6.3-jdk-14 // 将ip改成registry ip,删除镜像,若与发布镜像的不在同一台服务器(不存在该镜像),则不需要这步
docker pull ip:5000/my-maven // 拉取镜像
docker image ls // 查看镜像是否拉取成功
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值