docker搭建私有registry
搭建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相关推荐
- Windows系统用Docker搭建私有仓库
Windows系统用Docker搭建私有仓库 一.安装Docker Desktop 二.创建私有仓库 三.验证私有仓库是否创建成功 一.安装Docker Desktop 1.1.可以在软件管家安装这个 ...
- 基于Docker搭建私有镜像仓库
通常我们在docker中拉取的镜像都是在docker hub在线存储库中获取的,这个在线存储库里的docker镜像可以由任何用户发布和使用,显然这在某些场景下是不适用的,比如某些互金的隐私项目,或者是 ...
- docker搭建私有仓库
紧接上一篇镜像发布到官方之后,我们来搭建我们自己的私有仓库,比较,如果真的要在生产环境使用的话,这是必须的. 首先,我们来准备一下搭建私有仓库所需要的信息. #先吧私有仓库down下来,这需要一点时间 ...
- docker搭建本地 Registry
2019独角兽企业重金招聘Python工程师标准>>> 参考资料 https://www.cnblogs.com/CloudMan6/p/6902325.html Docker Hu ...
- CentOS7 Docker搭建私有镜像仓库
简述 docker中拉取的镜像都是在docker hub在线存储库中获取的,这个在线存储库里的docker镜像可以由任何用户发布和使用,显然这在某些场景下是不适用的,比如某些互金的隐私项目,或者是公司 ...
- Docker搭建私有镜像仓库
一. 常见镜像仓库服务 镜像仓库(Docker Registry)有公共的和私有的两种形式: 公共仓库:例如Docker官方的Docker Hub,国内也有一些云服务商提供类似于Docker Hub的 ...
- docker 搭建私有网盘owncloud
最近看到一个私有网盘owncloud搭建起来非常简单,就试了一下,尤其是使用docker搭建,简单快捷,搭建完成之后,用了一下,很简洁,打算后续把自己家里的电脑插个硬盘,装个docker,搭建ownc ...
- docker搭建私有git服务器
20210506 - 引言 使用git的时候,网的问题总是特别慢,反正本来也就是自己的东西,索性直接搭建一个私有的git服务器.搭建起来还是比较方便的.直接用docker搭建就好了. 步骤 1. 拉取 ...
- docker 搭建私有仓库registry (多用户)
Docker Registry v2 + Token Auth Server (Registry v2 认证) 环境:虚拟机中的centos 1,创建目录(基于/data/目录下) auth_serv ...
最新文章
- 大牛书单 | 大数据存储方向好书分享
- 【转】ABP源码分析三十三:ABP.Web
- MySQL笔记-删除session,删除阻塞任务
- Linux 端口侦听不到,在linux上,如何在不尝试连接的情况下检查端口是否处于侦听状态...
- android布局自适应小示例(用户反馈界面)
- 基于C++11实现线程池的工作原理
- taro 请务必在小程序页面中完善页面基础信息_如何一人五天开发完复杂微信小程序...
- Call to your teacher(深度搜索)
- 传智播客Java学习之类的继承
- 【单片机基础篇】共阴级四位数码管
- 创强教师办公用计算机配备要求,教师办公室电脑使用与管理有哪些规定
- M2增速8%处于历史地位——解读10月货币数据
- 摄影测量单像后方交会实验报告
- 微擎微信公众号消息模板
- hd printer lexmark / dazifuyin / dayin / fuyin
- supervisord如何优雅的新加服务
- 博彩游戏(tyvj 1519)
- 异构数据库10T数据迁移方案
- 西门子PLC模拟量输入数据类型变换
- Androguard交叉引用Crossreferences(XREFs)
热门文章
- java ArrayList源码分析(转载)
- 【BZOJ】【3671】【NOI2014】随机数生成器
- vscode保存react时标签出现空格自动换行报错
- React Native屏幕尺寸适配
- LeetCode(181)——超过经理收入的员工(MySQL)
- 【操作系统】—操作系统的概念 目标和功能
- Express简单路由使用
- ES6学习(九)—Generator 函数的语法
- JavaScript学习(十五)—内部样式与外部样式的修改与设置
- 联想340c笔记本cpu能升级吗_高性价比十大笔记本电脑(由高到低价格),有一台五五开也有.........