歡迎訪問我的GitHub
https://github.com/zq2599/blog_demos
內容:所有原創文章分類匯總及配套源碼,涉及Java、Docker、Kubernetes、DevOPS等;
起因是懶
最近在家折騰docker,需要一個私有鏡像倉庫harbor,通常做法是打開電腦,啟動harbor,用完再關閉電腦,總覺得這些操作挺麻煩(您想罵我懶么?您罵得對.....)
群暉解決煩惱
- 家里有台群暉DS218+,從不關機,為全家提供穩定的圖片和視頻服務,之前已在上面部署了maven私服、MySQL,運行得很穩定,今天就把harbor也部署在上面吧,今后可以隨時想用就用,算得上懶人救星了。
- 下圖是DS218+剛買來的樣子,兩塊NAS硬盤,一直在穩定服務:
- 下圖是網購的內存條,現在一共2+8=10G內存,內存充足才是敢折騰的底氣:
前文鏈接
之前折騰群暉的記錄:
思路
其實操作很簡單:harbor的部署是基於docker-compose的,群暉已帶有docker-compose了,按照官方的部署指南操作即可,以下幾處是要注意的地方:
- 部署腳本中需要管理員權限,所以不在網頁上操作了,而是SSH登錄后台進行操作;
- 自己在家使用,就不用https了,直接用http即可;
環境信息
- 群暉系統:DSM 6.2.2-24922 Update 4
- harbor:1.10.3
允許SSH登錄
先要設置允許SSH后台登錄:
- 如下圖紅框的操作:
- 如下圖,勾選啟用SSH功能,端口就用22:
- 現在用SSH終端即可登錄群暉了,我這里是在windows電腦上用Xshell6登錄的,您可以選用任意SSH終端工具,賬號密碼就是能登錄群暉的賬號密碼,如下圖,登錄后,就可以使用日常的linux命令了:
- 注意上圖的紅框,登錄賬號的home目錄是/var/services/homes/zq2599
部署harbor
- 執行以下腳本,創建必要目錄並且下載和解壓harbor安裝包:
mkdir ~/harbor-1.10.3 \
&& mkdir ~/harbor-1.10.3/log \
&& mkdir ~/harbor-1.10.3/data \
&& mkdir ~/harbor-1.10.3/data/secret \
&& cd ~/harbor-1.10.3 \
&& wget https://github.com/goharbor/harbor/releases/download/v1.10.3/harbor-online-installer-v1.10.3.tgz \
&& tar -zxvf harbor-online-installer-v1.10.3.tgz \
&& mkdir -p ~/harbor-1.10.3/harbor/common/config
- 打開文件~/harbor-1.10.3/harbor/harbor.yml,有以下幾處需要修改;
- 修改hostname,如果有域名就用域名,否則改成IP地址:
- 選一個沒有占用的端口作為http端口,這里我用的是5888
- 如果不打算使用https,就要注釋所有https的配置:
- 修改存儲數據的位置,注意/var/services/homes/zq2599是當前賬號的home目錄:
- 修改日志存儲路徑,這個文件夾之前就創建好了:
- 修改配置完畢,保存;
- 執行准備命令:
cd ~/harbor-1.10.3/harbor \
&& sudo ./prepare
- 開始安裝:
cd ~/harbor-1.10.3/harbor \
&& sudo ./install.sh
- 操作成功的控制台輸出如下:
瀏覽器登錄harbor
- 打開瀏覽器,訪問地址http://192.168.50.43:5888 ,賬號admin,密碼Harbor12345
- 登錄成功如下圖,群暉空間還是很充裕的:
使用harbor
- 接下來的操作是從另一台Linux電腦(下面稱之為A電腦)遠程推送鏡像到harbor機器;
- 如果要從A電腦連接harbor服務器,那么要對A電腦做設置,我這里A電腦是Linux操作系統;
- 編輯A電腦的/etc/docker/daemon.json文件(如果不存在就新建),增加下圖紅框中的內容,192.168.50.43是harbor服務器的IP地址,5888是前面配置的http端口:
- 重啟docker服務使配置生效:
systemctl daemon-reload \
&& systemctl restart docker
- 再次提醒:這里修改是遠程連接Harbor服務的機器的配置,而不是Harbor服務器的配置;
- 在A電腦上,有個nginx鏡像,id是2622e6cca7eb,如下圖所示:
- 按照dockr鏡像倉庫規則給鏡像打tag:
docker tag 2622e6cca7eb 192.168.50.43:5888/library/nginx:latest
- 現在是同一個ID的鏡像,但是有兩個tag:
- 登錄harbor:
docker login 192.168.50.43:5888 -u admin -p Harbor12345
- 推送鏡像到harbor:
docker push 192.168.50.43:5888/library/nginx:latest
- 操作成功:
- 推送成功后,在瀏覽器頁面可見此鏡像:
- 新建倉庫的操作如下所示:
- 創建成功:
卸載harbor
- 如果您不需要harbor了,執行以下命令即可:
cd ~/harbor-1.10.3/harbor \
&& sudo docker-compose down
- 再刪除整個~/harbor-1.10.3目錄即可,注意所有數據都會清除掉;
至此,群暉DS218+部署和驗證harbor的操作就完成了,希望能帶給您一些參考;
你不孤單,欣宸原創一路相伴
歡迎關注公眾號:程序員欣宸
微信搜索「程序員欣宸」,我是欣宸,期待與您一同暢游Java世界...
https://github.com/zq2599/blog_demos