1. 程式人生 > >群暉DS218+部署Harbor(1.10.3)

群暉DS218+部署Harbor(1.10.3)

### 歡迎訪問我的GitHub [https://github.com/zq2599/blog_demos](https://github.com/zq2599/blog_demos) 內容:所有原創文章分類彙總及配套原始碼,涉及Java、Docker、Kubernetes、DevOPS等; ### 起因是懶 最近在家折騰docker,需要一個私有映象倉庫harbor,通常做法是開啟電腦,啟動harbor,用完再關閉電腦,總覺得這些操作挺麻煩(您想罵我懶麼?您罵得對.....) ### 群暉解決煩惱 1. 家裡有臺群暉DS218+,從不關機,為全家提供穩定的圖片和視訊服務,之前已在上面部署了maven私服、MySQL,執行得很穩定,今天就把harbor也部署在上面吧,今後可以隨時想用就用,算得上懶人救星了。 2. 下圖是DS218+剛買來的樣子,兩塊NAS硬碟,一直在穩定服務: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075623377-863737016.png) 3. 下圖是網購的記憶體條,現在一共2+8=10G記憶體,記憶體充足才是敢折騰的底氣: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075625220-1461565894.png) ### 前文連結 之前折騰群暉的記錄: 1. [群暉DS218+部署mysql](https://blog.csdn.net/boling_cavalry/article/details/105460567) 2. [群暉DS218+部署kafka](https://blog.csdn.net/boling_cavalry/article/details/105462692) 3. [群暉DS218+做maven私服(nexus3)](https://blog.csdn.net/boling_cavalry/article/details/105458466) 4. [K8S使用群暉DS218+的NFS](https://blog.csdn.net/boling_cavalry/article/details/105465233) ### 思路 其實操作很簡單:harbor的部署是基於docker-compose的,群暉已帶有docker-compose了,按照官方的部署指南操作即可,以下幾處是要注意的地方: 1. 部署指令碼中需要管理員許可權,所以不在網頁上操作了,而是SSH登入後臺進行操作; 2. 自己在家使用,就不用https了,直接用http即可; ### 環境資訊 1. 群暉系統:DSM 6.2.2-24922 Update 4 2. harbor:1.10.3 ### 允許SSH登入 先要設定允許SSH後臺登入: 1. 如下圖紅框的操作: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075626431-2017347072.png) 2. 如下圖,勾選啟用SSH功能,埠就用22: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075626935-1708004350.png) 3. 現在用SSH終端即可登入群暉了,我這裡是在windows電腦上用Xshell6登入的,您可以選用任意SSH終端工具,賬號密碼就是能登入群暉的賬號密碼,如下圖,登入後,就可以使用日常的linux命令了: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075627609-2136802331.png) 4. 注意上圖的紅框,登入賬號的home目錄是/var/services/homes/zq2599 ### 部署harbor 1. 執行以下指令碼,建立必要目錄並且下載和解壓harbor安裝包: ```shell 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 ``` 2. 開啟檔案~/harbor-1.10.3/harbor/harbor.yml,有以下幾處需要修改; 3. 修改hostname,如果有域名就用域名,否則改成IP地址: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075627953-2061683425.png) 4. 選一個沒有佔用的埠作為http埠,這裡我用的是5888 ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075628304-2022013833.png) 5. 如果不打算使用https,就要註釋所有https的配置: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075629449-1702912593.png) 6. 修改儲存資料的位置,注意/var/services/homes/zq2599是當前賬號的home目錄: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075629973-435153107.png) 7. 修改日誌儲存路徑,這個資料夾之前就建立好了: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075630872-1234967061.png) 8. 修改配置完畢,儲存; 9. 執行準備命令: ```shell cd ~/harbor-1.10.3/harbor \ && sudo ./prepare ``` 10. 開始安裝: ```shell cd ~/harbor-1.10.3/harbor \ && sudo ./install.sh ``` 11. 操作成功的控制檯輸出如下: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075631698-950533533.png) ### 瀏覽器登入harbor 1. 開啟瀏覽器,訪問地址http://192.168.50.43:5888 ,賬號admin,密碼Harbor12345 ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075632153-1229996217.png) 2. 登入成功如下圖,群暉空間還是很充裕的: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075632719-998088409.png) ### 使用harbor 1. 接下來的操作是從另一臺Linux電腦(下面稱之為A電腦)遠端推送映象到harbor機器; 2. 如果要從A電腦連線harbor伺服器,那麼要對A電腦做設定,我這裡A電腦是Linux作業系統; 3. 編輯A電腦的/etc/docker/daemon.json檔案(如果不存在就新建),增加下圖紅框中的內容,192.168.50.43是harbor伺服器的IP地址,5888是前面配置的http埠: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075633473-1348468280.png) 4. 重啟docker服務使配置生效: ```shell systemctl daemon-reload \ && systemctl restart docker ``` 5. 再次提醒:這裡修改是遠端連線Harbor服務的機器的配置,而不是Harbor伺服器的配置; 6. 在A電腦上,有個nginx映象,id是2622e6cca7eb,如下圖所示: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075633860-1839445682.png) 7. 按照dockr映象倉庫規則給映象打tag: ```shell docker tag 2622e6cca7eb 192.168.50.43:5888/library/nginx:latest ``` 8. 現在是同一個ID的映象,但是有兩個tag: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075634466-14053185.png) 9. 登入harbor: ```shell docker login 192.168.50.43:5888 -u admin -p Harbor12345 ``` 10. 推送映象到harbor: ```shell docker push 192.168.50.43:5888/library/nginx:latest ``` 11. 操作成功: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075635173-489017882.png) 12. 推送成功後,在瀏覽器頁面可見此映象: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075635629-864979713.png) 13. 新建倉庫的操作如下所示: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075635931-1346377493.png) 14. 建立成功: ![在這裡插入圖片描述](https://img2020.cnblogs.com/other/485422/202012/485422-20201219075636205-625308722.png) ### 解除安裝harbor 1. 如果您不需要harbor了,執行以下命令即可: ```shell cd ~/harbor-1.10.3/harbor \ && sudo docker-compose down ``` 2. 再刪除整個~/harbor-1.10.3目錄即可,注意所有資料都會清除掉; 至此,群暉DS218+部署和驗證harbor的操作就完成了,希望能帶給您一些參考; ### 你不孤單,欣宸原創一路相伴 1. [Java系列](https://xinchen.blog.csdn.net/article/details/105068742) 2. [Spring系列](https://xinchen.blog.csdn.net/article/details/105086498) 3. [Docker系列](https://xinchen.blog.csdn.net/article/details/105086732) 4. [kubernetes系列](https://xinchen.blog.csdn.net/article/details/105086794) 5. [資料庫+中介軟體系列](https://xinchen.blog.csdn.net/article/details/105086850) 6. [DevOps系列](https://xinchen.blog.csdn.net/article/details/105086920) ### 歡迎關注公眾號:程式設計師欣宸 > 微信搜尋「程式設計師欣宸」,我是欣宸,期待與您一同暢遊Java世界... [https://github.com/zq2599/blog_demos](https://github.com/zq2599/blo