本系列文章演示如何搭建一个mini的云平台和DevOps实践环境。 基于这套实践环境,可以部署微服务架构的应用栈,演练提升DevOps实践能力。
安装过程中DTR节点需要能下载docker官网的资源,如果不能访问,可通过其它机器下载软件包,然后执行离线安装。
如何离线安装DTR,请参考这里。
在节点上安装DTR时,确保在该节点上打开了以下端口:
Direction | Port | Purpose |
---|---|---|
in | 80 / TCP | Web应用程序和API客户端访问DTR。 |
in | 443 / TCP | Web应用程序和API客户端访问DTR。 |
这些端口在安装DTR时是可配置的。
安装DTR的第一步是确保具备DTR安装运行的系统要求。
管理员设置
页面,在左侧菜单中,点击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的域名
注意:
在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安装指南