天天看點

harbor搭建與使用

前兩天測試服務docker化并k8s布署時,出于友善,使用了docker hub。由于我們的代碼是要放到鏡像裡的,通過運作容器,便能擷取我們的全部代碼,風險很大。是以我們決定進行私有化的鏡像部署。

經過調研,決定使用harbor這個開源項目。

項目介紹

​​harbor git 位址​​

版本 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

wget ​​https://github.com/goharbor/harbor/releases/download/v2.1.0/harbor-offline-installer-v2.1.0.tgz​​

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

“192.168.33.70"

]

然後重新開機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系統介紹)。