云计算核心技术Docker教程:注册服务器开放外部访问

2022-07-05 21:11:39
来源:互联网

  运行只能访问的注册表的localhost用处有限。为了使外部主机可以访问您的注册表,您必须首先使用 TLS 保护它。

  获得证书

  这些示例假设如下:

  您的注册表 URL 是https://myregistry.domain.com/.

  您的 DNS、路由和防火墙设置允许通过端口 443 访问注册表主机。

  您已从证书颁发机构 (CA) 获得证书。

  如果您已经获得了中间证书,请参阅 使用中间证书。

  1.创建一个certs目录。

  $ mkdir -p certs

  将.crt和.key文件从 CA 复制到certs目录中。以下步骤假定文件被命名domain.crt为 domain.key.

  2.如果注册表当前正在运行,请停止它。

  $ docker container stop registry

  3.重新启动注册表,指示它使用 TLS 证书。此命令将certs/目录绑定挂载到容器中/certs/,并设置环境变量,告诉容器在哪里可以找到domain.crt anddomain.key文件。注册表在默认 HTTPS 端口 443 上运行。

  $ docker run -d

  --restart=always

  --name registry

  -v "$(pwd)"/certs:/certs

  -e REGISTRY_HTTP_ADDR=0.0.0.0:443

  -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt

  -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key

  -p 443:443

  registry:2

  4.Docker 客户端现在可以使用其外部地址从您的注册表中提取和推送。以下命令演示了这一点:

  $ docker pull ubuntu:16.04

  $ docker tag ubuntu:16.04 myregistry.domain.com/my-ubuntu

  $ docker push myregistry.domain.com/my-ubuntu

  $ docker pull myregistry.domain.com/my-ubuntu

你该读读这些:一周精选导览
分享
首页 | 5G | 芯片 | 云计算 | AI | 科创板 | 互联网 | IT | 人工智能 | 手机数码 | 游戏 | 区块链 | 快讯
  • Copyright © 2022 TTKJ.ORG.CN, All Rights Reserved 版权所有
    欢迎广大网友来本网站投稿,网站内容来自于互联网或网友提供 客服QQ:67650701