docker使用容器搭建仓库注册服务器(Registry)

一. 搭建本地私有仓库

1.1 安装docker-ce

安装docker-ce的步骤参考以下链接

https://editor.csdn.net/md/?articleId=109626644

1.2 下载私有仓库核心镜像

docker pull registry
[root@gsy ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
registry            latest              708bc6af7e5e        2 months ago        25.8MB

1.3 编辑守护进程文件,添加本地仓库IP,然后重启docker

修改/etc/docker/daemon.json 文件

加入"insecure-registries":["12.0.0.22:5000"],注意之间的逗号
vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://caws71zg.mirror.aliyuncs.com"],
  "insecure-registries":["12.0.0.22:5000"]
}
systemctl restart docker

注意:重启完后:所有的容器都会被释放掉,变成exited状态

1.4 运行容器registry仓库

docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry
//安装的registry镜像制作成容器时需要提供空间给容器,否则私有仓库不能开启,即需要与宿主机挂载数据卷
错误:docker create -it registry /bin/bash
          docker ps -a
          38fb4a0c709d        registry            "/entrypoint.sh /bin…"   3 minutes ago        Exited (127) 2 minutes ago                                                    pedantic_borg
          无法docker start 成功

1.5 上传镜像到镜像仓库

上传私有仓库时,必须要更改标签,标签的格式有规定 先是IP地址:端口号/镜像名
因为在daemon.json 里指定了私有仓库的IP:端口

#更改标签:docker tag nginx:latest 12.0.0.22:5000/nginx_hz

#镜像上传:docker push 12.0.0.22:5000/nginx_hz

#查看镜像仓库中的镜像:curl -XGET http://12.0.0.22:5000/v2/_catalog
{"repositories":["nginx"]}

二. 设置本地镜像仓库

  1. 下载registry镜像
  2. 生成registry容器,开放5000端口,并映射出去
  3. 客户端设置daemon.json文件 指定私有仓库位置
  4. 将要上传的镜像打标签 仓库IP:端口/镜像名
  5. 上传镜像 docker push 仓库IP:端口/镜像名
  6. 下载镜像 docker pull 仓库IP:端口/镜像名
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值