易商讯
当前位置: 首页 » 网络 » 科技 » 正文

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

放大字体  缩小字体 发布日期:2022-05-13 18:45:33
导读

运行只能访问的注册表的localhost用处有限。为了使外部主机可以访问您的注册表,您必须首先使用 TLS 保护它。获得证书这些示例假设如下:您的注册表 URL 是https://myregistry.domain.com/.您的 DNS、路由和防火墙设置允许通过端口 443 访问注册表主机。您已从证书颁发机构 (CA) 获得证书。如果您已经获得了中间证书,请参

运行只能访问的注册表的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

 
(文/TechWeb编译)
免责声明
• 
本文云计算核心技术Docker教程:注册服务器开放外部访问链接:http://www.esxun.cn/internet/60859.html 。本文仅代表作者个人观点,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们,我们将在24小时内处理完毕。如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
 

Copyright © www.esxun.cn 易商讯ALL Right Reserved


冀ICP备2023038169号-3