在 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的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入理解spark两种调度模式:FIFO
- 下一篇: Go gin框架:helloworld