开两台虚拟机,一台为服务器另一台为客户端

           开启路由转发并sysctl -p 让其生效


Docker仓库_第1张图片

关闭selinux

Docker仓库_第2张图片

blob.png

 安装依赖软件包

1.编辑/etc/hosts,把docker.benet.comIp添加进来

Docker仓库_第3张图片


2.生成跟密钥  

rsa加密输出到private/cakey.pen文件下2048

Docker仓库_第4张图片

 3生成根证书

新的加密生成根证书

Docker仓库_第5张图片

查看

blob.png

4. nginx web 服务生成ssl密钥  (ls查看nignx服务器的密钥)

blob.pngblob.png

Docker仓库_第6张图片

设置防火墙

blob.png

5. nginx生成证书签署请求

    执行

Docker仓库_第7张图片

6. 私有CA根据请求来签发证书

Docker仓库_第8张图片

执行csr输出到crt

Docker仓库_第9张图片

安装 配置运行 njinx

1. 创建组和用户

编译安装nginx

--user=USER设定程序运行的用户环境(www

--group=GROUP设定程序运行的组环境(www

--prefix=PATH设定安装目录

--with-pcre启用pcre

--with-http_stub_status_module是为了启用nginxNginxStatus功能用来监听Nginx的当前状态。

--with-http_ssl_module 开启SSL模块,支持使用HTTPS协议网页

--with-http_realip_module 开启REALIP的支持该模块用于从客户请求的头数据中读取REALIP地址。

--with-http_addition_module 开启ADDITION模块,该模块允许你追加或前设数据到相应的主体部分。

--with-http_flv_module 模块为Flash Video文件提供服务端为流媒体支持。

Docker仓库_第10张图片

blob.png

4. 编辑/usr/local/nginx/conf/nginx.conf文件保存并退出后用nginx -t 检查文件是否正确

blob.png

Docker仓库_第11张图片

Docker仓库_第12张图片

blob.png

5.启动nginx

验证nginx 是否启动

Docker仓库_第13张图片

关闭Docker

blob.png

配置Docker

blob.png

编辑/etc/sysconfig/docker文件并添加一行保存并退出 

blob.png

blob.png

把根证书复制到/etc/docker/certs.d/docker.yy.com/目录下并开启dockerdockerrpm安装)

blob.png

运行私有仓库

Docker仓库_第14张图片

查看docker是否开启

blob.png

opt/data/registry作为私有仓库的位置

blob.png

运行私有仓库容器

Docker仓库_第15张图片

Docker仓库_第16张图片

验证1

Docker仓库_第17张图片

验证2

Docker仓库_第18张图片

克隆机

Docker 客户端配置

1.编辑/etc/hosts ,docker.benet.com ip地址添加进来

blob.png

2将docker registry服务器把文件/etc/pki/CA/cacert.pem拷贝到本机,然后执行

Docker仓库_第19张图片

3.cat/cacert.pem追加到ca-certificates.crt

blob.png

blob.png

验证

Docker仓库_第20张图片