搭建docker的私有registry

1、   registry简介

Docker在2015年推出了distribution项目,即Docker Registry 2。相比于old registry,Registry 2使用Go实现,在安全性、性能方面均有大幅改进。Registry设计了全新的Rest API,并且在image存储格式等方面不再兼容于old Registry。去年8月份,docker官方hub使用Registriy 2.1替代了原先的old Registry。如果你要与Registry2交互,你的Docker版本至少要是Docker 1.6。

官方在Docker hub上提供了registry的镜像(详情),我们可以直接使用该registry镜像来构建一个容器,搭建我们自己的私有仓库服务。

2、   环境概述

# uname –r

3.10.0-327.22.2.el7.x86_64

 

# docker –v

Docker version 1.12.6, build 88a4867/1.12.6

 

# ip a

10.10.229.43

 

3、   修改配置文件

搭建过程中会出现无法push镜像到私有仓库的问题,是https证书问题,因为Docker从1.3.X之后,与docker registry交互默认使用的是https,而此处搭建的私有仓库只提供http服务,我们启动的registry服务不是安全可信赖的,这时我们需要修改docker的配置文件,添加一行内容

# vim  /etc/sysconfig/docker

INSECURE_REGISTRY='--insecure-registry 10.10.229.43:5000'

#10.10.229.43:为dicker容器的宿主机ip,5000为宿主机映射到容器的port。

# systemctl restart docker

注意:一定要在搭建仓库前修改配置文件,搭建仓库后修改,重启docker是不生效的,或者你删除原来创建的容器,在另创建一个新的容器,也可以。

4、      部署registry

完成第三步后,将docker hub上的registry镜像pull到本地或直接启动容器,不用pull到本地。

# docker pull docker.io/registry

# docker tag docker.io/registry  registry:cuishuai

# docker run -d -p 5000:5000 -v /data/registry:/var/lib/registry registry:cuishuai

参数说明:

-v /data/registry:/var/lib/registry:默认情况下,会将仓库存放于容器内的/var/lib/registry,注意新版本不在是默认放在/tmp/registry目录下,指定本地目录/data/registry挂载到容器

容器启动成功,上传一个镜像进行测试:

# docker images

@我们要通过docker tag将该镜像标志为要推送到私有仓库

# docker tag registry   10.10.229.43:5000/registry:cuishuai

# docker images

# docker push 10.10.229.43:5000/registry

验证方式有两种,一是去/data/registry下看看有没有文件生成;

二是执行如下命令查看:有输出代表上传成功。此命令也用于查看私有registry的image。

#  curl  10.10.229.43:5000/v2/_catalog

{"repositories":["registry"]}

5、      使用registry

如果是在其他服务器上使用搭建的registry,必须要编辑docker的配置文件INSECURE_REGISTRY='--insecure-registry 10.10.229.43:5000'

把上面的配置加入其中;并重新启动docker。

如果没有执行该操作会报如下错误:

Error response from daemon: invalid registry endpoint https://10.10.229.43:5000/v0/: unable to ping registry endpoint https://10.10.229.43:5000/v0/

v2 ping attempt failed with error: Get https://10.10.229.43:5000/v2/: tls: oversized record received with length 20527

v1 ping attempt failed with error: Get https://10.10.229.43:5000/v1/_ping: tls: oversized record received with length 20527. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry 10.10.229.43:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/10.10.229.43:5000/ca.crt

修改/etc/sysconfig/docker”

# vim /etc/sysconfig/docker

INSECURE_REGISTRY='--insecure-registry 10.10.229.43:5000'

# systemctl  restart  docker

# docker pull 10.10.229.43:5000/registry

Using default tag: latest

Trying to pull repository 10.10.229.43:5000/registry ...

latest: Pulling from 10.10.229.43:5000/registry

90f4dba627d6: Pull complete

3a754cdc94a5: Pull complete

0756a217635f: Pull complete

f82b9495c796: Pull complete

154ef19ddee6: Pull complete

Digest:sha256:5eaafa2318aa0c4c52f95077c2a68bed0b13f6d2b464835723d4de1484052299

转载于:https://www.cnblogs.com/cuishuai/p/7206047.html

docker搭建私有registry相关推荐

  1. Windows系统用Docker搭建私有仓库

    Windows系统用Docker搭建私有仓库 一.安装Docker Desktop 二.创建私有仓库 三.验证私有仓库是否创建成功 一.安装Docker Desktop 1.1.可以在软件管家安装这个 ...

  2. 基于Docker搭建私有镜像仓库

    通常我们在docker中拉取的镜像都是在docker hub在线存储库中获取的,这个在线存储库里的docker镜像可以由任何用户发布和使用,显然这在某些场景下是不适用的,比如某些互金的隐私项目,或者是 ...

  3. docker搭建私有仓库

    紧接上一篇镜像发布到官方之后,我们来搭建我们自己的私有仓库,比较,如果真的要在生产环境使用的话,这是必须的. 首先,我们来准备一下搭建私有仓库所需要的信息. #先吧私有仓库down下来,这需要一点时间 ...

  4. docker搭建本地 Registry

    2019独角兽企业重金招聘Python工程师标准>>> 参考资料 https://www.cnblogs.com/CloudMan6/p/6902325.html Docker Hu ...

  5. CentOS7 Docker搭建私有镜像仓库

    简述 docker中拉取的镜像都是在docker hub在线存储库中获取的,这个在线存储库里的docker镜像可以由任何用户发布和使用,显然这在某些场景下是不适用的,比如某些互金的隐私项目,或者是公司 ...

  6. Docker搭建私有镜像仓库

    一. 常见镜像仓库服务 镜像仓库(Docker Registry)有公共的和私有的两种形式: 公共仓库:例如Docker官方的Docker Hub,国内也有一些云服务商提供类似于Docker Hub的 ...

  7. docker 搭建私有网盘owncloud

    最近看到一个私有网盘owncloud搭建起来非常简单,就试了一下,尤其是使用docker搭建,简单快捷,搭建完成之后,用了一下,很简洁,打算后续把自己家里的电脑插个硬盘,装个docker,搭建ownc ...

  8. docker搭建私有git服务器

    20210506 - 引言 使用git的时候,网的问题总是特别慢,反正本来也就是自己的东西,索性直接搭建一个私有的git服务器.搭建起来还是比较方便的.直接用docker搭建就好了. 步骤 1. 拉取 ...

  9. docker 搭建私有仓库registry (多用户)

    Docker Registry v2 + Token Auth Server (Registry v2 认证) 环境:虚拟机中的centos 1,创建目录(基于/data/目录下) auth_serv ...

最新文章

  1. 大牛书单 | 大数据存储方向好书分享
  2. 【转】ABP源码分析三十三:ABP.Web
  3. MySQL笔记-删除session,删除阻塞任务
  4. Linux 端口侦听不到,在linux上,如何在不尝试连接的情况下检查端口是否处于侦听状态...
  5. android布局自适应小示例(用户反馈界面)
  6. 基于C++11实现线程池的工作原理
  7. taro 请务必在小程序页面中完善页面基础信息_如何一人五天开发完复杂微信小程序...
  8. Call to your teacher(深度搜索)
  9. 传智播客Java学习之类的继承
  10. 【单片机基础篇】共阴级四位数码管
  11. 创强教师办公用计算机配备要求,教师办公室电脑使用与管理有哪些规定
  12. M2增速8%处于历史地位——解读10月货币数据
  13. 摄影测量单像后方交会实验报告
  14. 微擎微信公众号消息模板
  15. hd printer lexmark / dazifuyin / dayin / fuyin
  16. supervisord如何优雅的新加服务
  17. 博彩游戏(tyvj 1519)
  18. 异构数据库10T数据迁移方案
  19. 西门子PLC模拟量输入数据类型变换
  20. Androguard交叉引用Crossreferences(XREFs)

热门文章

  1. java ArrayList源码分析(转载)
  2. 【BZOJ】【3671】【NOI2014】随机数生成器
  3. vscode保存react时标签出现空格自动换行报错
  4. React Native屏幕尺寸适配
  5. LeetCode(181)——超过经理收入的员工(MySQL)
  6. 【操作系统】—操作系统的概念 目标和功能
  7. Express简单路由使用
  8. ES6学习(九)—Generator 函数的语法
  9. JavaScript学习(十五)—内部样式与外部样式的修改与设置
  10. 联想340c笔记本cpu能升级吗_高性价比十大笔记本电脑(由高到低价格),有一台五五开也有.........