本系列文章演示如何搭建一個mini的雲平臺和DevOps實踐環境。
基於這套實踐環境,能夠部署微服務架構的應用棧,演練提高DevOps實踐能力。html
安裝過程當中DTR節點須要能下載docker官網的資源,若是不能訪問,可經過其它機器下載軟件包,而後執行離線安裝。
如何離線安裝DTR,請參考這裏。node
在節點上安裝DTR時,確保在該節點上打開了如下端口:mysql
Direction | Port | Purpose |
---|---|---|
in | 80 / TCP | Web應用程序和API客戶端訪問DTR。 |
in | 443 / TCP | Web應用程序和API客戶端訪問DTR。 |
這些端口在安裝DTR時是可配置的。web
安裝DTR的第一步是確保具有DTR安裝運行的系統要求。sql
管理員設置
頁面,在左側菜單中,點擊Docker Trusted Registry
。# Pull the latest version of DTR $ docker pull docker/dtr:2.5.3 # Install DTR $ docker run -it --rmdocker/dtr:2.5.3 install \ --dtr-external-url [https://dtr.example.org] \ # 訪問dtr web ui的地址 --ucp-node node02 \# ucp安裝的節點主機名 --ucp-username admin\ --ucp-insecure-tls \ --ucp-url [https://ucp.example.org] # ucp的域名
注意:docker
在UCP Web UI,導航到共享的資源
下的應用棧
頁面:瀏覽器
或者經過瀏覽器,訪問DTR Web UI:安全
使用與UCP相同的管理員帳號登陸。服務器
若是其它節點要從DTR服務器上pull或push鏡像文件,須要先在其它節點(例如UCP節點)上獲取並信任DTR的CA,不然會報以下錯誤:網絡
$ docker login [dtr.example.org](http://dtr.example.org/) x509: certificate signed by unknown authority # 建立應用棧時報錯 dial tcp: lookup [dtr.example.org](http://dtr.example.org/) on 183.60.83.19:53: no such host
在UCP節點和全部要請求DTR的節點上,獲取並信任DTR的CA:
# Download the DTR CA certificate $ curl -k https://<dtr-domain-name>/ca -o /etc/pki/ca-trust/source/anchors/<dtr-domain-name>.crt # Refresh the list of certificates to trust $ update-ca-trust # Restart the Docker daemon $ systemctl restart docker.service
$ docker pull docker/dtr:2.5.3 $ docker run -it --rm \ docker/dtr:2.5.3 upgrade \ --ucp-insecure-tls
$ docker run -it --rm docker/dtr:2.5.3 reconfigure [command options]
$ docker run -it --rm \ docker/dtr:2.5.3 destroy \ --ucp-insecure-tls
注意:
<dtr-domain-name>/<user-or-org>/<repository-name>
, <user-or-org>
是用戶或者組織的名稱,能夠在DTR Web UI中建立;Docker Trusted Registry交互命令:
docker login <dtr-url>
docker pull <image>:<tag>
docker push <image>:<tag>
$ docker login dtr.example.org $ docker pull dtr.example.org/common/mysql:5 # common是組織或者用戶名, mysql是存儲庫名
$ docker push dtr.example.org/common/mysql:5
# Pull from Docker Hub the latest tag of the mysql image $ docker pull mysql:5.1.7 # Tag the mysql:5.1.7 image with the full repository namewe've created in DTR $ docker tag mysql:5.1.7 dtr.example.org/common/mysql:5
Docker Data Center系列(一)- 快速搭建雲原生架構的實踐環境
Docker Data Center系列(二)- UCP安裝指南
Docker Data Center系列(三)- DTR安裝指南
Docker Data Center系列(四)- 離線安裝UCP和DTR
Docker Data Center系列(五)- 使用自定義的TLS安全認證