Harbor介紹:https://goharbor.io/
前置條件
需要安裝了docker和docker-compose
下載Harbor
在harbor下載頁(https://github.com/goharbor/harbor/releases)選擇需要的版本,下載后解壓
tar -zxvf harbor-offline-installer-v1.9.3.tgz
解壓后的目錄結構是這樣的
harbor/harbor.v1.9.3.tar.gz harbor/prepare harbor/LICENSE harbor/install.sh harbor/harbor.yml
安裝Harbor
很明顯,harbor.yml就是配置文件了,進入解壓目錄,修改配置文件,這里只修改hostname和port

准備安裝包
sudo ./prepare

准備好之后就是安裝了
sudo ./install.sh

這時候就可以訪問服務器地址,登錄harbor管理界面了,默認賬號和密碼是admin/Harbor12345,在harbor.yml中也有寫明。

管理Docker項目
登錄之后,默認有一個叫library的公開項目

新增一個用戶falltakeman,創建一個測試項目,並添加項目成員。

制作鏡像
docker tag hello-world:latest 192.168.1.235:8072/hello/hello-world:latest
登錄harbor
docker login 192.168.1.235:8072
推送鏡像到harbor
docker push 192.168.1.235:8072/hello/hello-world:latest
推送提示錯誤
denied: requested access to the resource is denied
原因是harbor默認使用https,而這里是使用http協議。解決辦法,在/etc/docker/daemon.json添加docker registry,如果目錄下沒有daemon.json,則新增這個文件。
{ "insecure-registries": [ "192.168.1.235:8072" ] }
重啟docker
systemctl restart docker
重啟docker之后,再啟動harbor。
第一次啟動harbor的時候是通過./install啟動的,啟動之后自動在harbor目錄創建了docker-compose.yml文件,所以,現在可以通過docker-compose命令啟動harbor。
sudo docker-compose up -d

harbor啟動之后,再次登錄falltakeman賬號,向hello這個項目推送hello-world鏡像。

