html5中文学习网

您的位置: 首页 > 视频教程 > CSS3视频教程 » 正文

搭建Docker私有仓库的详细教程_Div+Css教程

[ ] 已经帮助:人解决问题

   1.Docker registry 说明fdnHTML5中文学习网 - HTML5先行者学习网

  本文记录的个人完整搭建docker registry操作过程,官方虽然提供了Docker Hub作为一个公开的集中仓库,但是天朝的网络可想而知,第一次pull一个镜像不是失败就是时间很长,为了解决这个问题需要创建一个私有的仓库在本地pull 本地push。我使用的docker版本是:1.5.0fdnHTML5中文学习网 - HTML5先行者学习网

  2、安装docker-registryfdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  docker run -d -e SETTINGS_FLAVOR=dev -e STORAGE_PATH=/tmp/registry -v /alidata/registry:/tmp/registry -p 5000:5000 registryfdnHTML5中文学习网 - HTML5先行者学习网

  # 如果本地没有下载过docker-registry,则首次会pull registry 运行时会映射路径和端口,以后就可以从/data/registry下找到私有仓库fdnHTML5中文学习网 - HTML5先行者学习网

  3、客户端上的操作fdnHTML5中文学习网 - HTML5先行者学习网

  #从本地仓库上获取有哪些镜像fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  curl -X GET http://registry.wpython.com:5000/v1/searchfdnHTML5中文学习网 - HTML5先行者学习网

  curl http://registry.wpython.com:5000/v1/searchfdnHTML5中文学习网 - HTML5先行者学习网

  {"num_results": 1, "query": "", "results": [{"description": "", "name": "library/centos6"}]}fdnHTML5中文学习网 - HTML5先行者学习网

  # 拉取到本地fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  docker pull library/centos6fdnHTML5中文学习网 - HTML5先行者学习网

  # tag 一个镜像fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  docker tag 8552ea9a16f9 registry.wpython.com:5000/centos6_x86_64.minifdnHTML5中文学习网 - HTML5先行者学习网

  # 将新的docker images push 到本地仓库fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  docker push registry.wpython.com:5000/centos6_x86_64.minifdnHTML5中文学习网 - HTML5先行者学习网

  4、加入nginx认证fdnHTML5中文学习网 - HTML5先行者学习网

  Docker 启动监听端口后,使用的是 http,可以远程来管理 Docker 主机。fdnHTML5中文学习网 - HTML5先行者学习网

  这样的场景存在弊端,API 层面是没有提供用户验证、Token 之类身份验证功能,任何人都可以通过地址加端口来控制 Docker 主机,为了避免这样的情况发生,Docker 官方也支持 https 方式,不过需要我们自己来生成证书。fdnHTML5中文学习网 - HTML5先行者学习网

  新版本的docker 也强制必须使用https否则会报错fdnHTML5中文学习网 - HTML5先行者学习网

  # 安装nginx过程略fdnHTML5中文学习网 - HTML5先行者学习网

  创建一个登陆用户(如果没有htpasswd命令 请安装httpd-tools这个包)fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  htpasswd -c /alidata/server/nginx/docker-registry.htpasswd adminfdnHTML5中文学习网 - HTML5先行者学习网

  New password:fdnHTML5中文学习网 - HTML5先行者学习网

  Re-type new password:fdnHTML5中文学习网 - HTML5先行者学习网

  Adding password for user adminfdnHTML5中文学习网 - HTML5先行者学习网

  # 生成根密钥fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  cd /etc/pki/CA/fdnHTML5中文学习网 - HTML5先行者学习网

  openssl genrsa -out private/cakey.pem 2048fdnHTML5中文学习网 - HTML5先行者学习网

  # 生成根证书fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  openssl req -new -x509 -key private/cakey.pem -out cacert.pemfdnHTML5中文学习网 - HTML5先行者学习网

  Country Name (2 letter code) [AU]:CNfdnHTML5中文学习网 - HTML5先行者学习网

  State or Province Name (full name) [Some-State]:BrijingfdnHTML5中文学习网 - HTML5先行者学习网

  Locality Name (eg, city) []:ChaoyangfdnHTML5中文学习网 - HTML5先行者学习网

  Organization Name (eg, company) [Internet Widgits Pty Ltd]:fdnHTML5中文学习网 - HTML5先行者学习网

  Organizational Unit Name (eg, section) []:fdnHTML5中文学习网 - HTML5先行者学习网

  Common Name (e.g. server FQDN or YOUR name) []:registry.wpython.comfdnHTML5中文学习网 - HTML5先行者学习网

  Email Address []:fdnHTML5中文学习网 - HTML5先行者学习网

  # 为nginx服务器生成ssl密钥fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  cd /alidata/server/nginx/sslfdnHTML5中文学习网 - HTML5先行者学习网

  openssl genrsa -out nginx.key 2048fdnHTML5中文学习网 - HTML5先行者学习网

  # 为nginx生成的证书签署请求fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  openssl req -new -key nginx.key -out nginx.csrfdnHTML5中文学习网 - HTML5先行者学习网

  You are about to be asked to enter information that will be incorporatedfdnHTML5中文学习网 - HTML5先行者学习网

  into your certificate request.fdnHTML5中文学习网 - HTML5先行者学习网

  What you are about to enter is what is called a Distinguished Name or a DN.fdnHTML5中文学习网 - HTML5先行者学习网

  There are quite a few fields but you can leave some blankfdnHTML5中文学习网 - HTML5先行者学习网

  For some fields there will be a default value,fdnHTML5中文学习网 - HTML5先行者学习网

  If you enter '.', the field will be left blank.fdnHTML5中文学习网 - HTML5先行者学习网

  -----fdnHTML5中文学习网 - HTML5先行者学习网

  Country Name (2 letter code) [AU]:CNfdnHTML5中文学习网 - HTML5先行者学习网

  State or Province Name (full name) [Some-State]:BeijingfdnHTML5中文学习网 - HTML5先行者学习网

  Locality Name (eg, city) []:ChaoyangfdnHTML5中文学习网 - HTML5先行者学习网

  Organization Name (eg, company) [Internet Widgits Pty Ltd]:fdnHTML5中文学习网 - HTML5先行者学习网

  Organizational Unit Name (eg, section) []:fdnHTML5中文学习网 - HTML5先行者学习网

  Common Name (e.g. server FQDN or YOUR name) []:registry.wpython.comfdnHTML5中文学习网 - HTML5先行者学习网

  Email Address []:fdnHTML5中文学习网 - HTML5先行者学习网

  Please enter the following 'extra' attributesfdnHTML5中文学习网 - HTML5先行者学习网

  to be sent with your certificate requestfdnHTML5中文学习网 - HTML5先行者学习网

  A challenge password []:fdnHTML5中文学习网 - HTML5先行者学习网

  An optional company name []:fdnHTML5中文学习网 - HTML5先行者学习网

  # 私有CA根据请求来签发证书fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  openssl ca -in nginx.csr -out nginx.crtfdnHTML5中文学习网 - HTML5先行者学习网

  # 如果报如下错误:fdnHTML5中文学习网 - HTML5先行者学习网

  Using configuration from /usr/local/ssl/openssl.cnffdnHTML5中文学习网 - HTML5先行者学习网

  /etc/pki/CA/index.txt: No such file or directoryfdnHTML5中文学习网 - HTML5先行者学习网

  unable to open '/etc/pki/CA/index.txt'fdnHTML5中文学习网 - HTML5先行者学习网

  140137408210600:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('/etc/pki/CA/index.txt','r')fdnHTML5中文学习网 - HTML5先行者学习网

  140137408210600:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:fdnHTML5中文学习网 - HTML5先行者学习网

  # 执行以下命令fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  cd /etc/pki/CA/fdnHTML5中文学习网 - HTML5先行者学习网

  mkdir newcertsfdnHTML5中文学习网 - HTML5先行者学习网

  touch index.txtfdnHTML5中文学习网 - HTML5先行者学习网

  touch serialfdnHTML5中文学习网 - HTML5先行者学习网

  echo 01 > serialfdnHTML5中文学习网 - HTML5先行者学习网

  cd -fdnHTML5中文学习网 - HTML5先行者学习网

  openssl ca -in nginx.csr -out nginx.crtfdnHTML5中文学习网 - HTML5先行者学习网

  Using configuration from /usr/local/ssl/openssl.cnffdnHTML5中文学习网 - HTML5先行者学习网

  Check that the request matches the signaturefdnHTML5中文学习网 - HTML5先行者学习网

  Signature okfdnHTML5中文学习网 - HTML5先行者学习网

  Certificate Details:fdnHTML5中文学习网 - HTML5先行者学习网

  Serial Number: 1 (0x1)fdnHTML5中文学习网 - HTML5先行者学习网

  ValidityfdnHTML5中文学习网 - HTML5先行者学习网

  Not Before: May 12 04:15:08 2015 GMTfdnHTML5中文学习网 - HTML5先行者学习网

  Not After : May 11 04:15:08 2016 GMTfdnHTML5中文学习网 - HTML5先行者学习网

  Subject:fdnHTML5中文学习网 - HTML5先行者学习网

  countryName = CNfdnHTML5中文学习网 - HTML5先行者学习网

  stateOrProvinceName = BeijingfdnHTML5中文学习网 - HTML5先行者学习网

  organizationName = Internet Widgits Pty LtdfdnHTML5中文学习网 - HTML5先行者学习网

  commonName = registry.wpython.comfdnHTML5中文学习网 - HTML5先行者学习网

  emailAddress = 739827282@qq.comfdnHTML5中文学习网 - HTML5先行者学习网

  X509v3 extensions:fdnHTML5中文学习网 - HTML5先行者学习网

  X509v3 Basic Constraints:fdnHTML5中文学习网 - HTML5先行者学习网

  CA:FALSEfdnHTML5中文学习网 - HTML5先行者学习网

  Netscape Comment:fdnHTML5中文学习网 - HTML5先行者学习网

  OpenSSL Generated CertificatefdnHTML5中文学习网 - HTML5先行者学习网

  X509v3 Subject Key Identifier:fdnHTML5中文学习网 - HTML5先行者学习网

  B5:20:C7:47:26:D9:26:54:12:F7:36:7E:4E:3A:F0:D9:0E:2C:F7:BDfdnHTML5中文学习网 - HTML5先行者学习网

  X509v3 Authority Key Identifier:fdnHTML5中文学习网 - HTML5先行者学习网

  keyid:93:F7:86:72:1B:2B:24:CD:AF:24:EF:53:F4:E1:FA:EC:E7:70:1A:90fdnHTML5中文学习网 - HTML5先行者学习网

  Certificate is to be certified until May 11 04:15:08 2016 GMT (365 days)fdnHTML5中文学习网 - HTML5先行者学习网

  Sign the certificate? [y/n]:yfdnHTML5中文学习网 - HTML5先行者学习网

  1 out of 1 certificate requests certified, commit? [y/n]yfdnHTML5中文学习网 - HTML5先行者学习网

  Write out database with 1 new entriesfdnHTML5中文学习网 - HTML5先行者学习网

  Data Base UpdatedfdnHTML5中文学习网 - HTML5先行者学习网

  # 发现根证书fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  # cp /etc/pki/tls/certs/ca-bundle.crt{,.bak} 备份以防出错fdnHTML5中文学习网 - HTML5先行者学习网

  # cat /etc/pki/CA/cacert.pem >> /etc/pki/tls/certs/ca-bundle.crtfdnHTML5中文学习网 - HTML5先行者学习网

  # 创建nginx配置文件fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  # vi /alidata/server/nginx/conf/vhosts/www.wpython.com.conffdnHTML5中文学习网 - HTML5先行者学习网

  upstream docker-registry {fdnHTML5中文学习网 - HTML5先行者学习网

  server localhost:5000;fdnHTML5中文学习网 - HTML5先行者学习网

  }fdnHTML5中文学习网 - HTML5先行者学习网

  server {fdnHTML5中文学习网 - HTML5先行者学习网

  listen 8080;fdnHTML5中文学习网 - HTML5先行者学习网

  server_name registry.wpython.com;fdnHTML5中文学习网 - HTML5先行者学习网

  # enabled sslfdnHTML5中文学习网 - HTML5先行者学习网

  ssl on;fdnHTML5中文学习网 - HTML5先行者学习网

  ssl_certificate /alidata/server/nginx/ssl/nginx.crt;fdnHTML5中文学习网 - HTML5先行者学习网

  ssl_certificate_key /alidata/server/nginx/ssl/nginx.key;fdnHTML5中文学习网 - HTML5先行者学习网

  proxy_set_header Host $http_host;fdnHTML5中文学习网 - HTML5先行者学习网

  proxy_set_header X-Real-IP $remote_addr;fdnHTML5中文学习网 - HTML5先行者学习网

  client_max_body_size 0;fdnHTML5中文学习网 - HTML5先行者学习网

  chunked_transfer_encoding on;fdnHTML5中文学习网 - HTML5先行者学习网

  location / {fdnHTML5中文学习网 - HTML5先行者学习网

  auth_basic "Restricted";fdnHTML5中文学习网 - HTML5先行者学习网

  auth_basic_user_file docker-registry.htpasswd;fdnHTML5中文学习网 - HTML5先行者学习网

  proxy_pass http://docker-registry;fdnHTML5中文学习网 - HTML5先行者学习网

  }fdnHTML5中文学习网 - HTML5先行者学习网

  location /_ping {fdnHTML5中文学习网 - HTML5先行者学习网

  auth_basic off;fdnHTML5中文学习网 - HTML5先行者学习网

  proxy_pass http://docker-registry;fdnHTML5中文学习网 - HTML5先行者学习网

  }fdnHTML5中文学习网 - HTML5先行者学习网

  location /v1/_ping {fdnHTML5中文学习网 - HTML5先行者学习网

  auth_basic off;fdnHTML5中文学习网 - HTML5先行者学习网

  proxy_pass http://docker-registry;fdnHTML5中文学习网 - HTML5先行者学习网

  }fdnHTML5中文学习网 - HTML5先行者学习网

  }fdnHTML5中文学习网 - HTML5先行者学习网

  # 完成测试fdnHTML5中文学习网 - HTML5先行者学习网

  代码如下:fdnHTML5中文学习网 - HTML5先行者学习网

  # docker login https://registry.wpython.com:8080fdnHTML5中文学习网 - HTML5先行者学习网

  Username: adminfdnHTML5中文学习网 - HTML5先行者学习网

  Password:fdnHTML5中文学习网 - HTML5先行者学习网

  Email: 739827282@qq.comfdnHTML5中文学习网 - HTML5先行者学习网

  Login Succeeded

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助