部署私有Docker Registry

搭建 Insecure Registry

修改Registry server上的Docker daemon的配置,为DOCKER_OPTS增加–insecure-registry:
DOCKER_OPTS="--insecure-registry 10.10.105.71:5000
重启Docker Daemon,启动Registry容器:

#docker run -d -p 5000:5000 -v /data/registry:/var/lib/registry --restart=always --name registry registry:2

在Private Registry2中查看或检索Repository或images,将不能用docker search:
但通过v2版本的API,我们可以实现相同目的:

#curl http://10.10.105.71:5000/v2/_catalog
#curl http://10.10.105.71:5000/v2/tonybai/busybox/tags/list

注:交互的主机上的Docker Daemon都要配置:–insecure-registry选项

搭建 Secure Registry

需要为Registry配置tls所需的key和crt文件
1、制作自签署证书
#mkdir -p certs
#openssl req -newkey rsa:2048 -nodes -sha256 -keyout certs/index.changhong.info.key -x509 -days 365 -out certs/index.changhong.info.crt
…………
Common Name (e.g. server FQDN or YOUR name) []:index.changhong.info

2、修改一下/etc/hosts文件: 10.10.105.71 index.changhong.info
3、配置本地访问
$ sudo mkdir -p /etc/docker/certs.d/index.changhong.info:5000
$ sudo cp certs/index.changhong.info.crt /etc/docker/certs.d/index.changhong.info:5000/ca.crt
$ sudo service docker restart

如果使用自签署的证书,那么所有要与Registry交互的Docker主机都需要安装index.changhong.info:5000/ca.crt
但如果你使用知名CA这一步也就可以忽略

Registry的鉴权管理

server上增加test用户,密码test123
$ mkdir auth
$ docker run --entrypoint htpasswd registry:2 -Bbn test test123 > auth/htpasswd

启动Secure Registry
$ docker run -d -p 5000:5000 --restart=always --name registry \
-v /auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
-v /data:/var/lib/registry \
-v /certs:/certs \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/index.changhong.info.crt \
-e REGISTRY_HTTP_TLS_KEY=/certs/index.changhong.info.key \
registry:2

执行docker login:
$docker login index.changhong.info:5000
Username: test
Password: test123

Registry中images的管理
$ curl --cacert index.changhong.info.crt --basic --user test:test123 https://index.changhong.info:5000/v2/_catalog

Docker registry V2的更多相关文章

  1. 【云计算】docker registry v2简介

    ubuntu docker方式部署docker registry v2 2016-03-03 17:36 by JackieHan, 4 阅读, 0 评论, 收藏,  编辑 生成自己签名的证书 生成签 ...

  2. docker registry v2与harbor的搭建

    docker的仓库 1 registry的安装 docker的仓库我们可以使用docker自带的registry,安装起来很简单,但是可能有点使用起来不是很方便.没有图形化. 开始安装 使用镜像加速器 ...

  3. 配置带用户权限的docker registry v2

    v1版本的docker registry用nginx配置,v2版本的用nginx有些问题,客户端总是会请求到v1/下面去, 以下从 http://blog.csdn.net/felix_yujing/ ...

  4. ubuntu docker方式部署docker registry v2

    生成自己签名的证书 生成签名的过程需要根据提示输入一些参数,需要注意的时Common Name的时候需要输入一个自己需要的域名,如果时内部域名记得访问的时候需要修改hosts. mkdir /data ...

  5. Docker Registry V2 Garbage Collection

    运行 docker run --rm -v /nfs1/docker/registry:/var/lib/registry registry:2.5.1 garbage-collect -d /roo ...

  6. Docker Registry V2 with Nginx

    安装 nginx 修改/etc/yum.repos.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/cen ...

  7. Deploying docker registry v2

    生成证书 openssl genrsa -out mydomain.key 2048 生成秘钥 openssl req -newkey rsa:4096 -nodes -sha256 -keyout ...

  8. 在CentOS 6上搭建私有的Docker Registry

    在CentOS 6上搭建私有的Docker Registry v2Registry概念 :Registry是一个无状态的, 高可扩展的服务器端应用程序, 用于存储和分发Docker Image. 依赖 ...

  9. Docker系列08—搭建使用私有docker registry

    本文收录在容器技术学习系列文章总目录 1.了解Docker Registry 1.1 介绍 registry 用于保存docker 镜像,包括镜像的层次结构和元数据. 启动容器时,docker dae ...

随机推荐

  1. 【转载】CSS 伪类-:before和:after

    :before和:after的作用就是在指定的元素内容(而不是元素本身)之前或者之后插入一个包含content属性指定内容的行内元素,最基本的用法如下: #example:before { conte ...

  2. USACO2016Splitting the Field分割牧场

    Description FJ的N头奶牛分别位于他二维的牧场的不同位置.FJ想用一个矩形栅栏围住这些牛(牛可以在栅栏边上),并使这个栅栏尽可能小.这个栅栏的边与x轴或y轴平行.不幸的是,FJ上个季度的牛 ...

  3. Python_Day2_基础2

    python基础之数据类型与变量 一.变量 变量作用:保存状态(程序的运行本质是一系列状态的变化,变量的目的就是用来保存状态,变量值的变化就构成了程序运行的不同结果.) Age=10 ----> ...

  4. JVM 内存

    大多数 JVM 将内存区域划分为 Method Area(Non-Heap)(方法区) ,Heap(堆) , Program Counter Register(程序计数器) ,   VM Stack( ...

  5. (37) 在命令行调用API

    l 前言 有时为了更好地调整和改动数据会和到cli ,这会给我们带来更高的效率,基于官网的文档很是简单,这里就带大家一起运用 cli l 搭建 在项目下面有文件odoo.py 这个文件 ,对就是用这个 ...

  6. DeviceIoControl

    DeviceIoControl是kernel32中的函数,包含的头文件为winbase.h. BOOL DeviceIoControl( HANDLE hDevice,                 ...

  7. MYSQL57密码策略修改

    1.查看当前的密码测试 show variables like 'validate_password%';

  8. 介绍开源的.net通信框架NetworkComms框架之六 x509证书通信

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  9. iOS开发Swift篇—(六)流程控制

    iOS开发Swift篇—(六)流程控制 一.swift中的流程控制 Swift支持的流程结构如下: 循环结构:for.for-in.while.do-while 选择结构:if.switch 注意:这 ...

  10. jquery ajax跨域请求webservice webconfig配置

    <configuration> <system.web> <compilation debug="true" targetFramework=&quo ...