如何使用SSL保护Docker注册

确保Docker注册受到SSL的保护是至关重要的。在这个快速教程中,我们将了解如何做到这一点。

正如前一篇文章中提到的,如果注册中心没有配置SSL,使用用户名和密码的注册表是不安全的。

我们将向注册表中添加SSL证书。为了使事情更简单,我们将使用Let's Encrypt,这是免费的。

一旦我们生成了凭证,我们就必须将它们添加到注册系统中。我们将创建一个名为证书的目录,该目录将包含证书pem文件和密钥pem文件。然后,我们将把生成的证书命名为crt.pem和key.crt 拷贝到证书目录里。

我们将按照上一篇文章中所遵循的步骤生成密码。

docker run--entrypointhtpasswd registry:2-Bbn> auth/password-file

现在,我们已经准备好通过指定证书来创建注册表。为此,我们将把证书目录挂载到Docker容器中。然后,我们将指定注册中心在容器的文件系统上查找凭据的位置。

docker run-d-p5000:5000--restart=always--nameregistry-v`pwd`/auth:/auth-v`pwd`/certificates:/certificates-e"REGISTRY_AUTH=htpasswd"-e"REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm"-eREGISTRY_AUTH_HTPASSWD_PATH=/auth/password-file-eREGISTRY_HTTP_TLS_CERTIFICATE=/certificates/crt.pem-eREGISTRY_HTTP_TLS_KEY=/certificates/key.pem registry:2

因此,您的注册中心将获取指定的凭据,并将使用创建的证书。

下一步是做DNS映射,并添加一个DNS条目,将子域定向到注册表的IP。

但是,如果您只想测试它,您可以在本地运行注册表,只需更改/etc/hosts并添加此条目。

127.0.0.1 registry.

一旦你通过浏览器导航到https://registry.:5000

您将会获取返回200的状态码,您的浏览器将识别您的连接是安全的。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180605A1BWTD00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券