harbor 搭建和部署

2023-06-29 12:01:24

 Docker官方的Docker Registry映象,可以用來儲存和分發Docker映象。不過實在不昨的,僅僅能儲存和分發映象,也不提供UI,你還得自己找一個過時的UI搭建,受限制於Docker Registry,能找到的開源UI介面多數也不昨的。相反精心設計過的HarBor 最合適企業級應用,提供良好的WEB介面進行管理並且整合了相當多的功能,十分舒服。

前置條件

安裝docker:Docker 安裝,常用命令 - Net碼畜 - 部落格園 (cnblogs.com)

安裝docker-docker-compose:Releases · docker/compose · GitHub

docker-compose離線安裝:

從GitHub上面下載二進位制檔案(選擇docker-compose-linux-x86_64 版本),然後拷到伺服器路徑下:/usr/local/bin/ ,將檔案重新命名為:docker-compose ,那麼完整的路徑是:/usr/local/bin/docker-compose

給許可權:

sudo chmod +x /usr/local/bin/docker-compose

測試結果:

docker-compose --version

harbor搭建

harbor支援線上安裝和離線安裝兩種模式,建議離線安裝,畢竟離線下載都是件困難的事件,咱們就別搞什麼線上安裝給自己刨坑了。

官網地址:https://goharbor.io/

github下載地址:Releases · goharbor/harbor (github.com)

從github上面下載最新之後,上傳至伺服器(假設是根目錄),然後解壓檔案。

tar xzvf harbor-offline-installer-v2.8.2.tgz

進入harbor資料夾,將組態檔harbor.yml.tmpl 修改為harbor.yml之後,編輯harbor.yml

第一個圈圈是修改主機名可以填寫IP,正式環境建議使用域名否則docker login容易出現不清不楚的問題(親測,改用域名之後就流暢了)。

第二圈是禁用HTTPS,看你的需求了。

第三圈是安裝的預設密碼,賬號是admin, 密碼是Harbor12345 , 自行修改。

修改完之後,直接執行。

./install.sh

靜靜等待,預設會幫你搞定一切,提示成功之後,輸入IP/域名就可以存取了

服務重啟

使用docker ps 檢視容器,你會發現很多容器在運作,才保證這麼多功能的Harbor在正常執行。

harbor依賴很多映象組成服務,這些容器是必須啟動,官方推薦設定是2核4G,為了保證這些容器的啟動正常,內建了一個容器編排檔案:docker-compose.yml

重啟伺服器使用docker ps 檢視,你會發現多容器沒有在執行,原因是因為這些容器設定:restart: always ,但是容器之間有依賴關係,因為沒有按正確的順序啟動導致部分容器啟動之後就失敗了,所以需要你手動在Harbor目錄下執行:docker-compose.yml

docker-compose up -d

-d 表示在後臺執行,docker-compose 會自己尋找當前目錄下docker-compose.yml執行。如果每次重啟手動執行嫌麻煩,可以做起服務,讓系統重啟幫你執行一次。

使用命令: vi  /etc/systemd/system/harbor.service

[Unit]
Description=Harbor service
Requires=docker.service
After=docker.service

[Service]
Type=simple
Restart=always
WorkingDirectory=/harbor  //改成你的harbor路徑
ExecStart=/usr/local/bin/docker-compose up //改成你的docker-compost路徑

[Install]
WantedBy=multi-user.target

設定開機啟動和啟動

sudo systemctl enable harbor.service
sudo systemctl start harbor.service

 重啟伺服器測試一下,萬事大吉~