Harbor - 使用 Cloudflare 配置 Http

问题描述 投票:0回答:1

我正在用港口集装箱登记处做一些测试。 为了将其发布到生产环境中,我想添加 ssl 支持。

正如 cloudflare 提供的那样,我想知道是否有可能让它发挥作用。

到目前为止,我已经在 cloudflare 中创建了一个 dns 记录,指向我的 harbor 实例,代理。

我已经按照文档下的步骤从港口配置https。

我能够使用域名访问注册表并且证书似乎有效..

但是当我尝试将图像推送给它时,它会抱怨证书无效

你有什么线索吗?

https cloudflare harbor
1个回答
0
投票

我刚刚发现我的错误。

为了设置证书,我需要使用 cloud-flare 完全严格模式。

我会把我所有的步骤都留在这里,以备不时之需。

云耀斑

设置 dns 注册表。

SSL/TLS

转到 SSL/TLS => 概述

并更改为Full(严格)

源站

现在转到 SSl/TLS 源服务器并创建一个新证书

Origin Certificate 中的值复制到扩展名为 .crt 的文本文件

私钥中的值复制到扩展名为.key的文本文件

在同一个地方保存 de cloud flare CA 证书。更多信息

港(Linux)

创建两个文件夹:

  • mkdir -p /data/cert
  • mkdir -p /etc/docker/certs.d

复制您创建的文件名称:

  • cert.crt =>domain.com.crt
  • key.key => domain.com.key
  • ca.crt=> ca.key

在港口主机上运行以下命令

openssl x509 -inform PEM -in /data/cert/domain.com.crt -out /data/cert/domain.com.cert

将 domain.com.crt 转换为 yourdomain.com.cert,供 Docker 使用。

  • cp /data/cert/domain.com.cert /etc/docker/certs.d/
  • cp /data/cert/domain.com.key /etc/docker/certs.d/
  • cp /data/cert/ca.crt /etc/docker/certs.d/

将服务器证书、密钥和 CA 文件复制到 Harbor 主机上的 Docker 证书文件夹中。您必须先创建适当的文件夹。

编辑 harbor.yaml 文件

为了使 ssl 工作,您需要取消注释并更改 ssl 部分中的属性

还建议更改主机名(在机器和 harbor.yaml 上)与您在 dns 中设置的相同

如果你已经启动了harbor:

  • 使用
    docke-compose down
    命令停止
  • 运行/harbor/准备脚本
  • 运行
    docker-compose up -d
    命令
© www.soinside.com 2019 - 2024. All rights reserved.