Harbor安裝
harbor所有服務是通過docker啟動,啟動腳本通過docker-compose管理docker,因此在安裝harbor前需要安裝docker和docker-compose。此處略。 對docker和docker-compose版本有要求.仔細看官網要求://goharbor.io/docs/2.0.0/install-config/installation-prereqs/
安裝有兩種方式:在線安裝和離線安裝。按照自己網絡情況選擇,個人經歷是在線安裝時下載鏡像失敗或者及其慢,后選擇了離線安裝。 GITHUB上有安裝包,地址://github.com/goharbor/harbor 在宿主機上直接執行下面這條命令下載會比較快,我安裝的是v1.10.3版本的,按照自己的需求改版本號就行了。安裝步驟如下:
# 下載
wget //storage.googleapis.com/harbor-releases/release-1.10.3/harbor-offline-installer-v1.10.3.tgz
?
# 解壓,解壓完成是一個harbor文件夾
tar -zxvf harbor-offline-installer-v1.10.3.tgz
cd harbor
# 找到harbor.yml,修改配置文件
# 修改主機名
hostname: 宿主機的IP或domain
# admin用戶密碼,默認是:XXXX,按需修改
harbor_admin_password: XXXX
# 配置http方式的話,目前已經夠了。
# 啟動,當前目錄下執行:install.sh
./install.sh
# 服務啟動情況檢查
docker-compose ps
?
Name Command State Ports
---------------------------------------------------------------------------------------------
harbor-core /harbor/harbor_core Up (healthy)
harbor-db /docker-entrypoint.sh Up (healthy) 5432/tcp
harbor-jobservice /harbor/harbor_jobservice ... Up (healthy)
harbor-log /bin/sh -c /usr/local/bin/ ... Up (healthy) 127.0.0.1:1514->10514/tcp
harbor-portal nginx -g daemon off; Up (healthy) 8080/tcp
nginx nginx -g daemon off; Up (healthy) 0.0.0.0:80->8080/tcp
redis redis-server /etc/redis.conf Up (healthy) 6379/tcp
registry /home/harbor/entrypoint.sh Up (healthy) 5000/tcp
registryctl /home/harbor/start.sh Up (healthy)
正常情況下,只要宿主機配置滿足要求,都能正常啟動。
使用
使用起來比較簡單,打好鏡像包之后,將鏡像tag為私有倉庫開頭的名稱。已個人測試環境為例
docker login 192.168.60.153 -u xxx -p xxx
docker tag SOURCE_IMAGE[:TAG] 192.168.60.153/wops/IMAGE[:TAG]
docker push 192.168.60.153/wops/IMAGE[:TAG]
好了,快去harbor里面看看吧。
Q&A
- harbor-db 一直重啟 解決流程: (1) 查看日志,日志存放路徑:/var/log/harbor/,數據庫對應日志為:postgresql.log 報錯信息:initdb: directory "/var/lib/postgresql/data" exists but is not empty。解決方式是找到docker-compose.yml文件,修改harbor-db映射的掛載路徑(data->data1這里按需改):
volumes:
- /data/database:/var/lib/postgresql/data1:z
修改后需要重啟服務,再看狀態
docker-compose restart
docker-compose ps
目前我只遇到過這一個問題,后續有將繼續補充。