首页 > 解决方案 > 如何使 Drone Docker 插件通过具有自签名 TLS 证书的自托管注册表进行身份验证

问题描述

我将 Drone 1.0.0-rc1 与Docker 插件一起使用。我的 docker 注册表只能通过 TLS 访问,但是证书是自签名的。整个 docker 生态系统都用类似的错误消息抱怨它,如果是 Drone 构建,它是这样的:

x509: 由未知机构签署的证书

通常我可以将 ca 作为受信任的权限添加到运行不同 Docker 解决方案的操作系统中,但是 Drone 正在一个短暂的 docker 容器内执行构建(以及身份验证本身)。

我怎样才能让它信任证书?

标签: dockerauthenticationsslx509drone

解决方案


一个不太出色但可行的解决方案是将以下设置添加到 .drone.yml:

insecure: true

--insecure-registry这使得它使用根据文档的参数运行 docker 守护进程

首先,尝试使用 HTTPS。

  • 如果 HTTPS 可用但证书无效,则忽略证书错误。
  • 如果 HTTPS 不可用,请回退到 HTTP。

就我而言,我知道我的注册表甚至没有通过 HTTP 公开,所以看起来足够好。


推荐阅读