<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Docker Register部署與基本認證

      準備

      1. 基本事項
      2. Docker環境
      3. 登錄授權方式
      4. 鏡像存放地址
      5. HTTPS外網訪問
      6. 啟動Docker Registry

      1. 基本事項

      本篇涉及到的數據文件都放在/data目錄下, 其中會有三個子目錄

      /data/auth/ 基本的用戶名密碼認證文件存放地址

      /data/certs/ docker registry 鏡像https訪問射擊到的證書與密鑰的存放地址

      /data/registry/ docker registry鏡像的存放地址, 當push鏡像到鏡像服務器之后,鏡像就是存放在這里

      2. Docker環境

      docker的安裝,全稱參考官網介紹: https://docs.docker.com/engine/installation/linux/docker-ce/debian/#install-docker-ce

      3. Registry登錄認證

      Registry Server的登錄認證有多種方式,這里我們使用常規情況下的一種認證,基本的用戶名密碼認證,這種認證方式也跟nginx的基本http認證相同, 使用一個htpasswd文件來存放認證的用戶名跟密碼, 這個文件的操作是通過htpasswd這個命令來添加與管理用戶密碼的.

      如果系統中沒有這個命令,可通過下面命令安裝

      apt-get install apache2-utils

      通過htpasswd命令生成用戶管理文件并添加一個用戶
      htpasswd -cBb auth/htpasswd <username> <password>

      往現有的文件里面添加一個用戶
      htpasswd -Bb auth/htpasswd <username> <password>

      Docker官網文檔地址: https://docs.docker.com/registry/deploying/#restricting-access

      4. 鏡像存放地址

      通常正式環境我們的鏡像會存儲在外部,而不是在docker container里面, 所以我們需要在外部準備一個目錄,在啟動registry鏡像的時候,通過-v 參數映射到container內部, 此教程里面的目錄是/data/registry/

      5. HTTPS外網訪問

      外網訪問必須要用https, 主要是涉及到證書的問題, 通常我們可以使用自簽名證書,

      我們分docker register server端跟 docker pull 客戶端兩部分來講

      server端不涉及根證書添加到信任區域問題,

      client端要訪問自簽名證書的服務器,必須添加根證書到client的信任區

      BUT: 當docker register server需要pull/push鏡像的時候,就需要把根證書添加到信任區, 這里有個原則,就是哪里需要pull/push鏡像,那臺機器就需要添加根證書

      添加自簽名根證書到linux信任區(Debian, 適用于Ubuntu)

      這個步驟只需要用到docker pull的機器上做, docker registry server非必須

      證書存放區域: /usr/share/ca-certificates/

      Copy證書到證書存放地址:

      wget http://agilelabs.net/certifications/publicauthorities/agilelabs_root_ca.pem/ –O /usr/share/ca-certificates/agilelabs_root_ca.crt

      重新加載新添加的跟證書:

      dpkg-reconfigure ca-certificates

      選擇YES=>通過”空格”鍵選擇剛添加的根證書=> Tab到底部的OK=>回車選擇

      添加新的根證書之后需要重啟Docker,讓 Docker能識別新的證書

      service docker restart

      6. 啟動Docker Registry

      mkdir -p /data/registry \
      mkdir -p /data/auth \
      mkdir -p /data/certs


      docker run -d \
      --restart=always \
      --name registry \
      -v /data/registry:/var/lib/registry \
      -v /data/auth:/auth \
      -e "REGISTRY_AUTH=htpasswd" \
      -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
      -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
      -v /data/certs:/certs \
      -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \
      -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/registry.niusys.com.crt \
      -e REGISTRY_HTTP_TLS_KEY=/certs/niusys.key \
      -p 443:443 \
      registry:2

      以上算是對這段時間研究Docker以來,搭建Registry的總結。

      自簽名證書的部分可以通過 http://agilelabs.net 非常方便的生成與下載.

      無論是密鑰還是證書都可以通過右鍵復制鏈接, 在Linux里面通過 wget http://agilelabs.net/下載地址 –O 要保存的文件名

      比如下載根證書并存儲到/usr/share/ca-certificates目錄下的agilelabs_root_ca.crt文件: wget http://agilelabs.net/certifications/publicauthorities/agilelabs_root_ca.pem/ –O /usr/share/ca-certificates/agilelabs_root_ca.crt


      補充 1 - 通過NGINX為Docker Registry配置反向代理

      我們知道https是使用的443端口,如果Docker Registry的Container端口映射到機器的443端口,那意味著這個機器再沒辦法部署其他https的服務, 在這里準備通過nginx反向代理Docker Registry,做到443端口的多服務共享, 我在上面的啟動配置里面把 –p 443:443換成了 –p 4433:443, 下面是nginx的docker registry反向代理配置

      upstream internal_docker_registry  {
           server localhost:4433; # registry.renhl.com
      }

      server {
           listen 443 ssl;
           server_name registry.niusys.com

          ssl on;
           ssl_certificate      /data/certs/registry.niusys.com.crt;
           ssl_certificate_key  /data/certs/niusys.key;
           ssl_session_cache    shared:SSL:10m;
           ssl_session_timeout 5m;
           ssl_protocols    TLSv1.1 TLSv1.2;

          client_max_body_size 0; # disable any limits to avoid HTTP 413 for large image uploads

          # required to avoid HTTP 411: see Issue #1486 (https://github.com/docker/docker/issues/1486)
           chunked_transfer_encoding on;

          location / {
               proxy_pass https://internal_docker_registry;
               proxy_read_timeout  90;

              proxy_http_version 1.1;
               proxy_set_header Upgrade $http_upgrade;
               proxy_set_header Connection $http_connection;
               proxy_set_header Host $host;
               proxy_set_header X-Real-IP $remote_addr;
               proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
               proxy_set_header X-Forwarded-Proto $scheme;
               proxy_cache_bypass $http_upgrade;
           }
      }

      posted @ 2017-11-18 17:26  DukeCheng  閱讀(10246)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲第一香蕉视频啪啪爽| 日本区二区三区不卡视频| 五级黄高潮片90分钟视频| 四虎国产精品永久入口| 亚洲一本大道在线| 蜜芽亚洲AV无码精品国产午夜| 欧美牲交a欧美牲交aⅴ图片| 亚洲中文无码永久免费| 国产初高中生在线视频| 国产在线一区二区不卡| 国产成人精品2021欧美日韩| 99热这里只有成人精品国产| 欧洲性开放老太大| 人妻教师痴汉电车波多野结衣| 久久精品亚洲精品国产色婷| 久久丁香五月天综合网| av午夜福利一片免费看久久| 久久久www成人免费精品| 国产精品三级黄色小视频| 久久精品国产亚洲av熟女| 四虎永久在线精品无码视频| JIZZJIZZ国产| 黄又色又污又爽又高潮| 国产精欧美一区二区三区| 亚洲精品国产字幕久久麻豆| 国产一区二区三区禁18| 久久夜色撩人精品国产小说| 91密桃精品国产91久久| 亚洲午夜无码久久久久蜜臀av | 亚洲AⅤ天堂AV天堂无码| 成人啪精品视频网站午夜| 性色av无码久久一区二区三区| 欧美成人一卡二卡三卡四卡| 天堂mv在线mv免费mv香蕉| 国产老熟女乱子一区二区| A级毛片无码久久精品免费| 少妇xxxxx性开放| 国产成年码av片在线观看 | 非会员区试看120秒6次| 在线aⅴ亚洲中文字幕| 国产中文字幕日韩精品|