2020年6月24日,云原生計算基金會(CNCF)宣布葵孤,Harbor 成為第 11 個畢業(yè)的項目。
一、什么是Harbor
Harbor 源于 2014 年 VMware中國研發(fā)中心云原生實驗室的一個內(nèi)部項目惊橱,旨在為容器的開發(fā)人員解決鏡像管理的問題。隨著 Kubernetes 和容器技術(shù)的流行箭昵,該項目于 2016 年開源税朴,2018 年 7 月捐贈給 CNCF,在同年 11 月被正式接受為孵化項目家制,并在云原生技術(shù)路線與生態(tài)中演進正林。
2020年5月 Harbor 2.0 正式發(fā)布,增加了對 OCI 制品的支持颤殴,能夠存儲大量云原生制品觅廓,例如容器鏡像、Helm Chart涵但、CNAB杈绸、OPA 和 Singularity 等等。開發(fā)人員可依照 OCI 規(guī)范矮瘟,通過 OCI 索引和 OCI 制品功能開拓更廣泛的應(yīng)用場景瞳脓,包括策略、遠程復(fù)制和基于角色的訪問控制等芥永。
同時web UI上增加充滿黑科技感的黑色主題篡殷。
二、安裝Harbor
安裝harbor可以直接用docker的方式埋涧,也可以選擇用kubernetes板辽。本文選注意介紹的是docker的方式。kubernetes采用的helm的方式安裝起來也非常簡單
2.1 docker-compose方式安裝
標準的安裝步驟包括6部分:
- 檢查安裝主機的依賴
- 下載安裝程序(在線或離線方式)
- https相關(guān)配置
- 配置harbor.yml文件
- 啟用https TLS證書
- 執(zhí)行安裝腳本
下面是具體的步驟:
- 檢查安裝主機的依賴
硬件
Resource | Minimum | Recommended |
---|---|---|
CPU | 2 CPU | 4 CPU |
Mem | 4 GB | 8 GB |
Disk | 40 GB | 160 GB |
軟件要求
Software | Version | Description |
---|---|---|
Docker engine | Version 17.06.0-ce+ or higher | 需要預(yù)先安裝](https://docs.docker.com/engine/installation/) |
Docker Compose | Version 1.18.0 or higher | 具體安裝參見 Docker Compose documentation |
Openssl | 最好是最新版本棘催,減少不必要安全漏洞 | 用于證書 |
網(wǎng)絡(luò)端口
Harbor requires that the following ports be open on the target host.
Port | Protocol | Description |
---|---|---|
443 | HTTPS | Harbor的web ui以及api的訪問端口劲弦,可以修改 |
4443 | HTTPS | Only required if Notary is enabled. You can change this port in the configuration file. |
80 | HTTP | Harbor的web ui以及api的訪問端口,可以修改醇坝,和443端口二選一即可邑跪,不過一般最好是https 443端口 |
2.下載安裝程序(在線或離線方式)
Online installer: 在線方式其實就是docker hub中進行docker image的下載,建議采用這種方式呼猪,因為可以通過鏡像加速解決離線下載慢的問題画畅。
Offline installer: 如果服務(wù)器沒有外網(wǎng)訪問能力,只能采用離線的方式宋距,離線的方式安裝包需要從github中下載轴踱,安裝包在500多M左右,在國內(nèi)下載速度還比較慢 谚赎。
https相關(guān)配置
https證書建議從阿里云淫僻,https://freessl.cn/等網(wǎng)站去生成一個诱篷,不建議采用自簽名的證書,不但麻煩還不被瀏覽器認可雳灵。這里假設(shè)你已經(jīng)擁有了一個ssl 證書棕所,并且下載好了。配置harbor.yml文件
主要是修改 host悯辙,https port琳省,ca證書地址,harbor_admin_password等幾個參數(shù)啟用https TLS證書
執(zhí)行安裝腳本
harbo的安裝腳本支持一些安裝選項笑撞,主要是不同組件的選用岛啸。
- Harbor with Notary
- Harbor with Clair
- Harbor with Chart Repository Service
- Harbor with two or all three of Notary, Clair, and Chart Repository Service
默認情況下,不包含 Notary, Clair, or Chart Repository Service
命令如下:
sudo ./install.sh