Harbor最新進展,將由CNCF管理

Harbor(https://goharbor.io)是一個企業級的容器鏡像倉庫管理系統,用於爲企業級用戶創建私有的容器鏡像庫,一方面能夠對內部安裝的網絡傳輸加速,另外一方面提供本身特有的版本更好地保證可用性和安全性。Harbor原來由VMWare China開發,所有開源。git

一、Harbor的重要變化

Harbor最近發佈了1.6版本,將會帶來一些很是重要的變化。github

該版本開始支持Helm Chart的管理,不過這個用Github原本就能夠作的很好,只不過這裏採用了圖形界面,仍是很是方便普通的使用者,尤爲是中小企業的準專業人員。redis

Har將來將會移交到CNCF管理,成爲雲原生基礎設施的一部分。目前已經接收CNCF的一些贊助資源,而且項目架構和代碼都已經開始了調整。這將是雲原生社區的一個重大利好,補充了雲原生架構中除了Kubernetes容器編排管理外的重要部分。docker

二、Kubernetes中部署Harbor

在Harbor 1.6版本中,Helm Chart項目已經改變,移到了 https://github.com/goharbor/harbor-helm 子項目中。目前,開發調整還比較頻繁,可能出現使用上的問題,須要關注項目發展、及時更新代碼。出現的問題能夠去提交issue,幫助項目完善。api

  • 預先拉取容器鏡像:
# 界面服務 
docker pull goharbor/harbor-ui:dev 
docker pull goharbor/harbor-adminserver:dev
docker pull goharbor/harbor-portal:dev
docker pull goharbor/harbor-jobservice:dev

# 受權管理
docker pull goharbor/clair-photon:dev 
docker pull goharbor/notary-server-photon:dev
docker pull goharbor/notary-signer-photon:dev

# 鏡像服務 
docker pull goharbor/registry-photon:dev 
docker pull goharbor/harbor-registryctl:dev
docker pull goharbor/chartmuseum-photon:dev

# 鏡像存儲
docker pull goharbor/harbor-db:dev 
docker pull docker.io/bitnami/redis:4.0.9
  • 部署步驟以下:
# 複製部署代碼。
git clone https://github.com/goharbor/harbor-helm

# 選擇版本。
cd harbor-helm
git checkout master

# 能夠進去修改values.yaml文件裏面的參數。
# 參數參考:https://github.com/goharbor/harbor-helm

helm dependency update

# 安裝到harbor命名空間下面。
helm install --namespace harbor --name harbor .

# !若是錯誤或者是不須要了,進行刪除。
# helm delete --purge harbor

原來的一些部署方法可能再也不適用,僅供參考:瀏覽器

Harbor 1.6 已經支持helm 私服倉庫了,仍是比較方便的。安全

我採用上面的方法部署,遇到一些小坑。服務器

  • 採用Rook部署,後來StorageClass rook-ceph-block建立pvc能夠成功,可是掛載時失敗。這個多是Ceph的緣由。
  • 採用NFS部署,所有成功(修改chart/chartmuseum裏的local"爲local後)。可是,登錄時頁面顯示有錯誤。使用admin/Harbor12345登錄反饋無效的用戶名和密碼。註冊新用戶沒法激活確認按鈕。
  • 估計這些都是項目調整中的問題,等過段時間將會迎來一個全新的Harbor,目前保持耐心。

三、常規的直接部署

若是上面的方法部署不成功,又着急使用的話,Harbor也支持常規部署,已經有了長時間的考驗。網絡

該方式將Harbor安裝在Docker環境下,不使用Kubernetes進行管理。架構

A、安裝

  • 下載在線安裝包。
https_proxy=192.168.199.99:9999 wget https://storage.googleapis.com/harbor-releases/release-1.6.0/harbor-online-installer-v1.6.0.tgz
  • 配置harbor部署參數。

harbor.cfg 文件

  • 生成docker-compose file。
sudo ./install.sh   --with-clair --with-chartmuseum

B、使用

  • 登錄
    • 使用瀏覽器打開相應的IP地址。
    • 默認密碼 admin/Harbor12345。
相關文章
相關標籤/搜索