harbor搭建與使用


 
 
前兩天測試 服務docker化並k8s布署時,出於方便,使用了docker hub。由於我們的代碼是要放到鏡像里的,通過運行容器,便能獲取我們的全部代碼,風險很大。所以我們決定進行私有化的鏡像部署。
經過調研,決定使用harbor這個開源項目。

項目介紹

版本 harbor-offline-installer-v2.1.0.tgz
 
優點:
本身自代 docker 私有倉庫
支持基於角色的權限管理
支持 LDAP

安裝

harbor支持k8s的helm安裝和本地安裝,我這次先擇的安裝方式是本地安裝。
我的運行環境是 Centos7.2。

0. 前置條件

需要安裝docker並運行
yum install docker # 安裝docker
systemctl start docker # 運行docker服務
需要安裝docker-compose
yum install docker-compose

1. 下載安裝包

直接選擇編譯好的包
這里有兩個包Harbor offline installer 和 Harbor online installer,兩者的區別的是 Harbor offline installer 里就包含的 Harbor 需要使用的鏡像文件。
下載成功,並解壓
cd /usr/local/src
 
 
tar -zxvf harbor-offline-installer-v2.1.0.tgz
進入解壓的目錄,並 ls
harbor.v1.7.1.tar.gz 里就是 Harbor 用到的鏡像

2. 編輯配置文件 

 vim harbor.yml
 
 
 
hostname: 192.168.33.70  #本機ip
customize_crt: false  #可以http訪問 
    

為了可以http訪問 需要編輯

vi /etc/docker/daemon.json
 
{
"registry-mirrors": ["https://a4fyjv0u.mirror.aliyuncs.com"],
"insecure-registries": [
    "192.168.33.70"
  ]
}

重啟docker 

systemctl restart docker
 
docker-compose restart

3. 運行

修改完配置文件后,運行 ./prepare,它會哪所配置文件修改一文件
運行 ./install.sh
運行成功,docker ps 查看,可以看到服務已經起來了。
如果報錯https那把相關配置注釋即可
# https related config
#https:
  # https port for harbor, default is 443
# port: 443
  # The path of cert and key files for nginx
  #certificate: /your/certificate/path
  #private_key: /your/private/key/path

4. 常用管理命令

停止服務: docker-compose stop
開始服務: docker-compose start

GUIl界面使用

1. 新建項目

新建一個項目,命名為 ainirobot,並設置訪問級別為公開。
這里的項目就是一私有化的Docker鏡像倉庫。

上傳鏡像

1. 修改Docker配置

docker 默認是按 https 請求的,由於我搭的私有庫是 http 的,所以需要修改 docker 配置,將信任的庫的地址寫上
修改文件 /etc/docker/daemon.json
{
"insecure-registries": [
“192.168.33.70"
]
}
然后重啟docker
systemctl restart docker

2. 制作鏡像

將 mongo 制作成一個私有鏡像, mongo 為我之前從 docker hub 上拉取的鏡像。
docker tag mongo A.B.C.D/ainirobot/nebulae_mongo:0.0.1

3. 上傳

1. 先登陸私有庫
docker login A.B.C.D
2. PUSH
docker push A.B.C.D/ainirobot/nebulae_mongo:0.0.1
3. 結果
從后台已經能看到這個鏡像了

推薦

完成了私有庫的搭建后,可以再安裝一個k8s集群后台管理系統( wayne系統介紹)。
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM