Docker+K8S笔记(二):Linux安装docker-registry

背景:docker-registry 是自己的镜像库,相当于maven的私服,我们的项目要push到我们的docker私库


一、Docker Registry安装

官方在Docker Hub上提供了Docker Registry的镜像。我们可以直接使用该镜像构建一个Registry容器来搭建我们的Registry私有仓库。

# docker search registry

1f5d5ebb419dc562fc241533d1f4137bb07.jpg

# docker run -d -p 5000:5000 -v /docker/registry/data:/var/lib/registry --privileged=true --restart=always --name registry registry:latest 
# docker ps

1d2778ac8ad415f8b29e10926ef0e161ff4.jpg
打开浏览器访问http://{IP}:5000/v2/,出现下图表示安装成功

a219c72c91e513aa871588868840fb72a39.jpg

二、Docker Registry使用

  • 制作私有仓库镜像
    • 先从官方Docker Hub上拉取busybox镜像。
    • # docker pull busybox
      # docker images
  • 修改该镜像的tag
    • # docker tag docker.io/busybox:latest 192.168.232.25:5000/busybox:latest
      # docker images
  • 推送该镜像到Registry私有仓库
    • docker push {ip}:5000/busybox:latest

如果出现:
The push refers to a repository [192.168.232.25:5000/busybox]
Get https://192.168.232.25:5000/v1/_ping: http: server gave HTTP response to HTTPS client

因为Docker与Docker Registry交互默认使用https,然而此处搭建的Docker Registry只提供http服务,所以当和Registry私有仓库交互时会失败,为了解决这个问题需要在启动Docker时配置Registry不安全选项。

vim  /etc/docker/daemon.json
{
    "registry-mirrors": [
        "http://68cdf6cf.m.daocloud.io"
    ],
    "insecure-registries":["192.168.232.25:5000"]
}

  • 重启Docker,并重启registry容器
    • # systemctl restart docker
      # docker start registry

 

  • 重新推送busybox镜像到Registry私有仓库,并成功。
    • # docker push {ip}:5000/busybox:latest


三、从私有仓库拉取镜像

  • 在Docker Client终端拉取Registry私有仓库镜像。
    • docker pull {ip}:5000/busybox:latest

报相同的错误,请进行相同的配置,并重启Docker。然后重新拉取busybox镜像。

转载于:https://my.oschina.net/u/4075242/blog/3068384

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值