亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > CSS > 正文

搭建Docker私有倉庫的詳細教程

2024-07-11 09:00:52
字體:
來源:轉載
供稿:網友

   1.Docker registry 說明

  本文記錄的個人完整搭建docker registry操作過程,官方雖然提供了Docker Hub作為一個公開的集中倉庫,但是天朝的網絡可想而知,第一次pull一個鏡像不是失敗就是時間很長,為了解決這個問題需要創建一個私有的倉庫在本地pull 本地push。我使用的docker版本是:1.5.0

  2、安裝docker-registry

  代碼如下:

  docker run -d -e SETTINGS_FLAVOR=dev -e STORAGE_PATH=/tmp/registry -v /alidata/registry:/tmp/registry -p 5000:5000 registry

  # 如果本地沒有下載過docker-registry,則首次會pull registry 運行時會映射路徑和端口,以后就可以從/data/registry下找到私有倉庫

  3、客戶端上的操作

  #從本地倉庫上獲取有哪些鏡像

  代碼如下:

  curl -X GET http://registry.wpython.com:5000/v1/search

  curl http://registry.wpython.com:5000/v1/search

  {"num_results": 1, "query": "", "results": [{"description": "", "name": "library/centos6"}]}

  # 拉取到本地

  代碼如下:

  docker pull library/centos6

  # tag 一個鏡像

  代碼如下:

  docker tag 8552ea9a16f9 registry.wpython.com:5000/centos6_x86_64.mini

  # 將新的docker images push 到本地倉庫

  代碼如下:

  docker push registry.wpython.com:5000/centos6_x86_64.mini

  4、加入nginx認證

  Docker 啟動監聽端口后,使用的是 http,可以遠程來管理 Docker 主機。

  這樣的場景存在弊端,API 層面是沒有提供用戶驗證、Token 之類身份驗證功能,任何人都可以通過地址加端口來控制 Docker 主機,為了避免這樣的情況發生,Docker 官方也支持 https 方式,不過需要我們自己來生成證書。

  新版本的docker 也強制必須使用https否則會報錯

  # 安裝nginx過程略

  創建一個登陸用戶(如果沒有htpasswd命令 請安裝httpd-tools這個包)

  代碼如下:

  htpasswd -c /alidata/server/nginx/docker-registry.htpasswd admin

  New password:

  Re-type new password:

  Adding password for user admin

  # 生成根密鑰

  代碼如下:

  cd /etc/pki/CA/

  openssl genrsa -out private/cakey.pem 2048

  # 生成根證書

  代碼如下:

  openssl req -new -x509 -key private/cakey.pem -out cacert.pem

  Country Name (2 letter code) [AU]:CN

  State or Province Name (full name) [Some-State]:Brijing

  Locality Name (eg, city) []:Chaoyang

  Organization Name (eg, company) [Internet Widgits Pty Ltd]:

  Organizational Unit Name (eg, section) []:

  Common Name (e.g. server FQDN or YOUR name) []:registry.wpython.com

  Email Address []:

  # 為nginx服務器生成ssl密鑰

  代碼如下:

  cd /alidata/server/nginx/ssl

  openssl genrsa -out nginx.key 2048

  # 為nginx生成的證書簽署請求

  代碼如下:

  openssl req -new -key nginx.key -out nginx.csr

  You are about to be asked to enter information that will be incorporated

  into your certificate request.

  What you are about to enter is what is called a Distinguished Name or a DN.

  There are quite a few fields but you can leave some blank

  For some fields there will be a default value,

  If you enter '.', the field will be left blank.

  -----

  Country Name (2 letter code) [AU]:CN

  State or Province Name (full name) [Some-State]:Beijing

  Locality Name (eg, city) []:Chaoyang

  Organization Name (eg, company) [Internet Widgits Pty Ltd]:

  Organizational Unit Name (eg, section) []:

  Common Name (e.g. server FQDN or YOUR name) []:registry.wpython.com

  Email Address []:

  Please enter the following 'extra' attributes

  to be sent with your certificate request

  A challenge password []:

  An optional company name []:

  # 私有CA根據請求來簽發證書

  代碼如下:

  openssl ca -in nginx.csr -out nginx.crt

  # 如果報如下錯誤:

  Using configuration from /usr/local/ssl/openssl.cnf

  /etc/pki/CA/index.txt: No such file or directory

  unable to open '/etc/pki/CA/index.txt'

  140137408210600:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('/etc/pki/CA/index.txt','r')

  140137408210600:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400:

  # 執行以下命令

  代碼如下:

  cd /etc/pki/CA/

  mkdir newcerts

  touch index.txt

  touch serial

  echo 01 > serial

  cd -

  openssl ca -in nginx.csr -out nginx.crt

  Using configuration from /usr/local/ssl/openssl.cnf

  Check that the request matches the signature

  Signature ok

  Certificate Details:

  Serial Number: 1 (0x1)

  Validity

  Not Before: May 12 04:15:08 2015 GMT

  Not After : May 11 04:15:08 2016 GMT

  Subject:

  countryName = CN

  stateOrProvinceName = Beijing

  organizationName = Internet Widgits Pty Ltd

  commonName = registry.wpython.com

  emailAddress = 739827282@qq.com

  X509v3 extensions:

  X509v3 Basic Constraints:

  CA:FALSE

  Netscape Comment:

  OpenSSL Generated Certificate

  X509v3 Subject Key Identifier:

  B5:20:C7:47:26:D9:26:54:12:F7:36:7E:4E:3A:F0:D9:0E:2C:F7:BD

  X509v3 Authority Key Identifier:

  keyid:93:F7:86:72:1B:2B:24:CD:AF:24:EF:53:F4:E1:FA:EC:E7:70:1A:90

  Certificate is to be certified until May 11 04:15:08 2016 GMT (365 days)

  Sign the certificate? [y/n]:y

  1 out of 1 certificate requests certified, commit? [y/n]y

  Write out database with 1 new entries

  Data Base Updated

  # 發現根證書

  代碼如下:

  # cp /etc/pki/tls/certs/ca-bundle.crt{,.bak} 備份以防出錯

  # cat /etc/pki/CA/cacert.pem >> /etc/pki/tls/certs/ca-bundle.crt

  # 創建nginx配置文件

  代碼如下:

  # vi /alidata/server/nginx/conf/vhosts/www.wpython.com.conf

  upstream docker-registry {

  server localhost:5000;

  }

  server {

  listen 8080;

  server_name registry.wpython.com;

  # enabled ssl

  ssl on;

  ssl_certificate /alidata/server/nginx/ssl/nginx.crt;

  ssl_certificate_key /alidata/server/nginx/ssl/nginx.key;

  proxy_set_header Host $http_host;

  proxy_set_header X-Real-IP $remote_addr;

  client_max_body_size 0;

  chunked_transfer_encoding on;

  location / {

  auth_basic "Restricted";

  auth_basic_user_file docker-registry.htpasswd;

  proxy_pass http://docker-registry;

  }

  location /_ping {

  auth_basic off;

  proxy_pass http://docker-registry;

  }

  location /v1/_ping {

  auth_basic off;

  proxy_pass http://docker-registry;

  }

  }

  # 完成測試

  代碼如下:

  # docker login https://registry.wpython.com:8080

  Username: admin

  Password:

  Email: 739827282@qq.com

  Login Succeeded

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩av在线电影网| 国产精品一区久久| 精品久久久中文| 中文字幕亚洲无线码在线一区| 日韩av一区在线| 91久久国产精品| 久久久人成影片一区二区三区观看| 亚洲欧美日韩精品| 亚洲成人三级在线| 日本精品性网站在线观看| 欧美猛少妇色xxxxx| 最新国产成人av网站网址麻豆| 欧美性猛交xxxx免费看久久久| 91久久精品久久国产性色也91| 国产成人亚洲精品| 在线电影欧美日韩一区二区私密| 狠狠色香婷婷久久亚洲精品| 亚洲性av在线| 欧美夫妻性视频| 久久精品国产亚洲7777| 在线视频国产日韩| 大伊人狠狠躁夜夜躁av一区| 欧美成人午夜影院| 日本久久久久久久久| 91免费在线视频网站| 国产精品久久久久久av福利软件| 欧美日韩亚洲国产一区| 国产精品高潮呻吟久久av黑人| 好吊成人免视频| 日本精品久久中文字幕佐佐木| 欧美激情亚洲激情| 国产精品永久免费观看| 亚洲天堂视频在线观看| 亚洲一区二区福利| 亚洲精品中文字| 欧美最猛性xxxx| 日韩中文字幕在线视频播放| 疯狂欧美牲乱大交777| 亚洲美女在线观看| 国产精品视频区| 日韩中文字幕国产| 日本欧美在线视频| 国产精品视频播放| 国产精品老女人视频| 成人网在线观看| 亚洲直播在线一区| 51ⅴ精品国产91久久久久久| 精品久久久久久久大神国产| 中文字幕亚洲一区二区三区五十路| 性欧美在线看片a免费观看| 日韩免费视频在线观看| 中文字幕亚洲欧美日韩在线不卡| 色琪琪综合男人的天堂aⅴ视频| 欧美中文在线免费| 黄色成人在线免费| 亚洲一区二区三区xxx视频| 色妞色视频一区二区三区四区| 国产精品美女久久| 欧美午夜丰满在线18影院| 精品日本美女福利在线观看| 亚洲成av人影院在线观看| 亚洲一区二区久久久| 成人黄色片在线| 久久久综合免费视频| 97福利一区二区| 尤物精品国产第一福利三区| 成人av在线天堂| 久久91亚洲精品中文字幕| 色偷偷综合社区| 亚洲国产精品女人久久久| 亚洲自拍偷拍在线| 欧美另类xxx| 久久精品在线播放| 亚洲精品少妇网址| 91免费的视频在线播放| 国产精品网址在线| 中文字幕久久精品| 国产伊人精品在线| 国产成人精品视频| 456亚洲影院| 久久国产一区二区三区| 欧美日韩国产丝袜另类| 国产欧美最新羞羞视频在线观看| 日韩精品在线观看网站| 亚洲国产精品久久精品怡红院| 国产精品中文在线| 精品久久久久久中文字幕大豆网| 欧美性少妇18aaaa视频| 蜜臀久久99精品久久久久久宅男| 欧美日韩国产999| 97av在线视频| 国产ts人妖一区二区三区| 亚洲精品免费av| 亚洲精品视频在线播放| 久久777国产线看观看精品| 福利视频第一区| 亚洲女人天堂网| 亚洲电影在线看| 国产精品视频一区二区三区四| 国产精品91久久久| 国产亚洲精品激情久久| 久久久人成影片一区二区三区观看| 97色在线观看| 国产91成人在在线播放| 亚洲日本aⅴ片在线观看香蕉| 成人综合国产精品| 亚洲国产精品成人一区二区| 最新的欧美黄色| 91成人在线观看国产| 精品久久久久久久中文字幕| 亚洲欧美制服综合另类| 一区二区日韩精品| 国产香蕉一区二区三区在线视频| 欧美激情一二区| 久久久久久国产精品美女| 久久国产精品久久久久久| xxxxx91麻豆| 久久亚洲精品网站| 日韩免费观看在线观看| 国产精品美女久久久久久免费| 成人黄色片在线| 日韩欧美在线视频| 国产精品视频26uuu| 大荫蒂欧美视频另类xxxx| 2020欧美日韩在线视频| 亚洲视频欧美视频| 黑人巨大精品欧美一区免费视频| 国产精品综合网站| 久久频这里精品99香蕉| 最近2019中文字幕mv免费看| 国产亚洲美女久久| 国产视频一区在线| 日本精品视频在线观看| 色青青草原桃花久久综合| 亚洲性无码av在线| 国产精品吴梦梦| 日韩欧美一区二区三区| 日韩有码在线播放| 久久久黄色av| 97视频免费在线看| 欧美成人免费大片| 国产精品美女久久久久久免费| 91av网站在线播放| 免费成人高清视频| 国产精品高潮呻吟久久av无限| 日韩av片电影专区| 91美女高潮出水| 欧美日韩福利电影| 亚洲精品一区二三区不卡| 国产一区二区欧美日韩| 亚洲美女精品久久| 亚洲国产精品久久| 久久久免费观看视频| 久久久爽爽爽美女图片| 国产精品露脸自拍| 国产一区二区三区丝袜| 欧美一区二区视频97| 中国人与牲禽动交精品| 日韩高清电影免费观看完整| 国产精品三级网站| 成人亚洲欧美一区二区三区| 精品福利在线看| 欧美裸体男粗大视频在线观看| 国产精品www|