一、硬體配置及軟體版本 1.伺服器配置 最低要求:CPU2核/記憶體4G/硬碟40G 推薦:CPU4核/記憶體8G/硬碟300G 2.軟體版本 Docker CE 17.06版本+ 本文版本:Docker CE 20.10.14 Docker Compose 1.18版本+ 本文版本:V2.4.1 Ha ...
一、硬體配置及軟體版本
1.伺服器配置
最低要求:CPU2核/記憶體4G/硬碟40G
推薦:CPU4核/記憶體8G/硬碟300G
2.軟體版本
Docker CE 17.06版本+ 本文版本:Docker CE 20.10.14
Docker Compose 1.18版本+ 本文版本:V2.4.1
Harbor v2.5.0
3.安裝方式
Harbor有兩種安裝方式:
• 線上安裝:從Docker Hub下載Harbor相關鏡像,因此安裝軟體包非常小
• 離線安裝:安裝包包含部署的相關鏡像,因此安裝包比較大
二、安裝Docker和Docker Compose
1.安裝docker
# 安裝依賴包
yum install -y yum-utils
# 添加Docker軟體包源
yum-config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# 安裝Docker CE
yum install -y docker-ce
# 啟動Docker服務並設置開機啟動
systemctl start docker
systemctl enable docker
2.安裝docker compose
#下載
wget https://github.com/docker/compose/releases/download/v2.4.1/docker-compose-linux-x86_64
#移動到系統二進位目錄下
mv docker-compose-linux-x86_64 /usr/bin/docker-compose
#賦可執行許可權
chmod a+x /usr/bin/docker-compose
#驗證是否安裝成功
docker-compose --help
三、部署Harbor HTTP
1.下載安裝包
本文選擇離線安裝方式,所以安裝包有點大
wget https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-offline-installer-v2.5.0.tgz
2.解壓修改配置
tar zxvf harbor-offline-installer-v2.5.0.tgz cd harbor cp harbor.yml.tmpl harbor.yml vim harbor.yml hostname: reg.mydomain.com #此處需要修改,IP或者功能變數名稱都行 #https的四行配置需要添加註釋 https: port: 443 certificate: /your/certificate/path private_key: /your/private/key/path #可以修改數據目錄 data_volume: /data #可以修改harbor管理員初始密碼 harbor_admin_password: Harbor12345 #可以修改日誌路徑 log: level: info local: rotate_count: 50 rotate_size: 200M location: /var/log/harbor
3.配置載入並安裝
./prepare
./install.sh
安裝完成,可以使用docker-compose查看
4.登陸頁面查看
5.本地docker登陸問題
http方式搭建的harbor本地docker登陸的時候需要配置信任,否則按https請求,會報錯。配置方式如下:
IP地址為倉庫地址
vim /etc/docker/daemon.json
重啟docker
四、啟用HTTPS
1.生成ssl證書
可以自己生成自簽證書,或者網上申請證書都可,阿裡雲功能變數名稱可以申請免費證書
#生成自簽證書
自簽證書使用的時候需要做本地hosts解析
#創建證書目錄
mkdir -p /etc/harbor/key cd /etc/harbor/key #生成秘鑰和自簽名證書: openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt #生成證書簽名請求(功能變數名稱改為自己harbor里的)這裡為(harbor.my.com) openssl req -newkey rsa:4096 -nodes -sha256 -keyout harbor.my.com.key -out harbor.my.com.csr #生成伺服器證書:(功能變數名稱改為自己harbor里的)這裡為(harbor.my.com) openssl x509 -req -days 365 -in harbor.my.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out harbor.my.com.crt
2.Harbor啟用HTTPS
vi harbor.yml
hostname: harbor.my.com #此處需要修改成自己的功能變數名稱
https:
port: 443
certificate: /etc/harbor/key/harbor.my.com.crt
private_key: /etc/harbor/key/harbor.my.com.key
把以上https的四行註釋去掉,然後配置實際的證書路徑即可
3.重新配置並部署Harbor
./prepare
docker-compose down
docker-compose up -d
4.將證書複製到docker主機
mkdir /etc/docker/certs.d/harbor.my.com(你的功能變數名稱)
cp 你的功能變數名稱 /etc/docker/certs.d/harbor.my.com/harbor.my.com.crt
到此Harbor https配置完成
五、Harbor維護
容器 |
功能 |
harbor-core |
配置管理中心 |
harbor-db |
PG資料庫 |
harbor-jobservice |
負責鏡像複製 |
harbor-log |
記錄操作日誌 |
harbor-portal |
Web管理頁面和API |
nginx |
前端代理,負責前端頁面和鏡像上傳/下載轉發 |
redis |
會話 |
registryctl |
鏡像存儲 |
容器數據持久化目錄(可更改):/data
日誌文件目錄(可更改):/var/log/harbor
資料庫做好定期備份。
六、配置Harbor主從複製
1.主備
• 簡單,主掛了切到備Harbor
• 同一時間只有一臺提供服務
• 適合少量鏡像下載
2.雙主
• 雙向配置複製
• 兩台同時提供服務
• 前面增加負載均衡器
3.一主多從
• 多個從同步主
• 適合多地區業務、大量鏡像下載需求
4.主從配置步驟
提供者:選擇Harbor
目標名:自定義,可填一個具有聲明意義的名稱
描述:自定義,可備註目標倉庫的一些信息
目標URL:對端倉庫的地址
訪問ID:目標倉庫的用戶名
訪問密碼:訪問ID的密碼
驗證遠程證書:如果對端用的是自簽證書或者非信任證書的話不要勾選此項
名稱:自定義,有聲明意義
描述:自定義,備註規則中倉庫信息
複製模式:
Push-based:從本地倉庫推送到遠程倉庫,雙主模式兩個harbor同時配置
Pull-based:從遠程倉庫拉去到本地倉庫,一主多從模式的從庫可配置,主從模式從庫可配置
目標倉庫/源倉庫:對端倉庫地址,在倉庫管理中添加
資源過濾器:指定根據什麼來同步
觸發模式:一般選擇事件驅動,這樣主庫已更新就會同步
本文來自博客園,作者:憤怒的小白~,轉載請註明原文鏈接:https://www.cnblogs.com/mgsudu/p/16170478.html