欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

在 KubeSphere 中部署 Harbor

发布时间:2025/1/21 编程问答 79 豆豆
生活随笔 收集整理的这篇文章主要介绍了 在 KubeSphere 中部署 Harbor 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Harbor 是一个开源仓库,通过各种策略和基于角色的访问控制来保护制品,确保镜像经过扫描且没有漏洞,并对镜像签名使其受信。

本教程演示如何从 KubeSphere 应用商店部署 Harbor。

准备工作

  • 请确保已启用 OpenPitrix 系统。
  • 您需要创建一个企业空间、一个项目和一个用户帐户 (project-regular) 供本教程操作使用。该帐户需要是平台普通用户,并邀请至项目中赋予 operator 角色作为项目操作员。本教程中,请以 project-regular 身份登录控制台,在企业空间 demo-workspace 中的 demo-project 项目中进行操作。有关更多信息,请参见创建企业空间、项目、帐户和角色。

动手实验

步骤 1:从应用商店中部署 Harbor

  • 在 demo-project 项目的概览页面,点击左上角的应用商店

  • 找到 Harbor,点击应用信息页面上的部署

  • 设置名称并选择应用版本。请确保将 Harbor 部署在 demo-project 中,点击下一步

  • 应用配置页面,编辑 Harbor 的配置文件,请注意以下字段。

    type:访问 Harbor 服务的方式。本示例使用 nodePort。

    tls:指定是否启用 HTTPS。多数情况下设置为 false。

    externalURL:暴露给租户的 URL。

    备注

    • 请指定 externalURL,如果您访问 Harbor 有问题,该字段会对解决问题非常有用。
    • 请确保在本教程中使用 HTTP 协议和其对应的 nodePort。有关更多信息,请参见常见问题中的示例配置。

    配置编辑完成后,点击部署继续。

  • 稍等片刻待 Harbor 启动并运行。

  • 步骤 2:访问 Harbor

  • 基于配置文件中 expose.type 字段的设置,访问方式可能会不同。本示例使用 nodePort 访问 Harbor,按照先前步骤中的设置,访问 http://nodeIP:30002。

    备注

    取决于您的 Kubernetes 集群的部署位置,您可能需要在安全组中放行端口并配置相关的端口转发规则。

  • 使用默认帐户和密码 (admin/Harbor12345) 登录 Harbor。密码由配置文件中的 harborAdminPassword 字段定义。

  • 常见问题

  • 如何启用 HTTP 登录?

    在步骤 1 中将 tls.enabled 设置为 false。externalURL 的协议必须和 expose.type.ports 相同。

    如果您使用 Docker 登录,请在 daemon.json 中将 externalURL 设置为 insecure-registries 其中之一,然后重新加载 Docker。

    下面是示例配置文件,供您参考。请注意阅读注解。

    ## 请注意,192.168.0.9 是示例 IP 地址,您必须使用自己的地址。 expose:type: nodePorttls:enabled: falsesecretName: ""notarySecretName: ""commonName: "192.168.0.9" # 将 commonName 更改成您自己的值。nodePort:# NodePort 服务的名称。name: harborports:http:# 使用 HTTP 服务时,Harbor 监听的服务端口。port: 80# 使用 HTTP 服务时,Harbor 监听的节点端口。nodePort: 30002https:# 使用 HTTPS 服务时,Harbor 监听的服务端口。port: 443# 使用 HTTPS 服务时,Harbor 监听的服务端口。nodePort: 30003# 仅在 notary.enabled 设置为 true 时需要此配置。notary:# Notary 监听的服务端口。port: 4443# Notary 监听的节点端口。nodePort: 30004externalURL: http://192.168.0.9:30002 # 使用您自己的 IP 地址。# Harbor admin 的初始密码。启动 Harbor 后可以通过主页修改。 harborAdminPassword: "Harbor12345" # 用于加密的密钥,必须是包含 16 个字符的字符串。 secretKey: "not-a-secure-key"
  • 如何启用 HTTPS 登录?

    a. 使用自签名证书。

    • 在步骤 1 中将配置文件中的 tls.enabled 设置为 true,并对应编辑 externalURL。
    • 将 Pod harbor-core 的 /etc/core/ca 中存储的自签名证书复制到您的主机。
    • 先在您的主机中信任该自签名证书,然后重启 Docker。

    b. 使用公共 SSL。

    • 将证书添加为密钥 (Secret)。
    • 在步骤 1 中将配置文件中的 tls.enabled 设置为 true,并对应编辑 externalURL。
    • 编辑 tls.secretName。
  • 有关更多信息,请参见 Harbor 文档。

    原文链接:https://kubesphere.com.cn/docs/application-store/built-in-apps/harbor-app/

    总结

    以上是生活随笔为你收集整理的在 KubeSphere 中部署 Harbor的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。