企業(yè)級(jí)鏡像倉(cāng)庫(kù)Harbor

Harbor 部署HTTP

安裝docker-compose

[root@k8s-master habor]# mv docker-compose-Linux-x86_64  /usr/bin/docker-compose

[root@k8s-master bin]# chmod +x /usr/bin/docker-compose

安裝并配置habor

[root@k8s-master habor]# tar xzvf harbor-offline-installer-v2.0.0.tgz 

[root@k8s-master habor]# cd harbor/
[root@k8s-master harbor]# cp harbor.yml.tmpl harbor.yml
-------------------------------------------------------------------------------------
#修改配置文件
[root@k8s-master harbor]# vi harbor.yml
hostname: 192.168.153.27
harbor_admin_password: Harbor12345
--屏蔽https的配置
---------------------------------------------------------------------------------------
[root@k8s-master harbor]# ./prepare 
[root@k8s-master harbor]# ./install.sh 
-------------------------------------------------------------------------------------
[root@k8s-master harbor]# docker-compose ps
[root@k8s-master harbor]# docker-compose down
[root@k8s-master harbor]# docker-compose up -d

訪問網(wǎng)站

http://192.168.153.27/
1638759769124.png

Docker登錄

http登錄,添加可信任

[root@es3 harbor]#  vi /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
  "insecure-registries":["192.168.153.27"]
}

重啟相關(guān)服務(wù)

[root@es3 harbor]# systemctl daemon-reload  
[root@es3 harbor]# systemctl restart docker
-------------------------------------------------------------------------------
[root@k8s-master harbor]# docker-compose down
[root@k8s-master harbor]# docker-compose up -d

#如果有harbor,重啟docker,就要重啟docker-compose

登錄驗(yàn)證

[root@es3 harbor]# docker login 192.168.153.27

Login Succeeded

鏡像上傳與下載

[root@es3 harbor]# docker image ls
REPOSITORY                      TAG            IMAGE ID       CREATED         SIZE
hello                           v1             3ce8dd487dba   16 hours ago    147MB
......

#打標(biāo)簽
[root@es3 harbor]# docker tag hello:v1 192.168.153.27/library/hello:v1


[root@es3 harbor]# docker image ls
REPOSITORY                      TAG            IMAGE ID       CREATED         SIZE
192.168.153.27/library/hello    v1             3ce8dd487dba   16 hours ago    147MB
hello                           v1             3ce8dd487dba   16 hours ago    147MB
......

#上傳
[root@es3 harbor]# docker push 192.168.153.27/library/hello:v1

#下載
[root@es3 harbor]# docker pull 192.168.153.27/library/hello:v1
1638760665145.png

Harbor 部署HTTPS

生成證書

[root@es3 ssl]# chmod +x *
[root@es3 ssl]# ls
certs.sh  cfssl.sh

Harbor啟用HTTPS

hostname: reg.pcitc.com
https:

  port: 443

  certificate: /root/ssl/reg.pcitc.com.pem
  private_key: /root/ssl/reg.pcitc.com-key.pem

重新配置并部署Harbor

[root@k8s-master harbor]# ./prepare 

[root@k8s-master harbor]# docker-compose down

[root@k8s-master harbor]# docker-compose up -d

訪問網(wǎng)站

https://reg.pcitc.com/
1638771569466.png

Docker登錄

配置客戶端hosts(每個(gè)節(jié)點(diǎn)都要配置)

[root@es3 harbor]# vi /etc/hosts
192.168.153.27 reg.pcitc.com

配置可信任(每個(gè)節(jié)點(diǎn)都要配置)

[root@es3 ssl]# vi /etc/docker/daemon.json
{
  "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
  "insecure-registries":["reg.pcitc.com"]
}

重啟生效

[root@es3 harbor]# systemctl daemon-reload  
[root@es3 harbor]# systemctl restart docker
-------------------------------------------------------------------------------
[root@k8s-master harbor]# docker-compose down
[root@k8s-master harbor]# docker-compose up -d

#如果有harbor,重啟docker,就要重啟docker-compose

登錄驗(yàn)證

[root@es3 ssl]# docker login reg.pcitc.com

Login Succeeded

鏡像上傳與下載

[root@es3 ssl]# docker tag tomcat:v1 reg.pcitc.com/library/tomcat:v1
[root@es3 ssl]# docker push reg.pcitc.com/library/tomcat:v1   
#其他節(jié)點(diǎn)
[root@prometheus ~]# docker pull reg.pcitc.com/library/tomcat:v1   

Harbor 主從復(fù)制

主備

? 簡(jiǎn)單,主掛了切到備Harbor
? 同一時(shí)間只有一臺(tái)提供服務(wù)
? 適合少量鏡像下載
1638778912604.png

雙主復(fù)制

? 雙向配置復(fù)制
? 兩臺(tái)同時(shí)提供服務(wù)
? 前面增加負(fù)載均衡器
1638779058549.png

一主多從

? 多個(gè)從同步主
? 適合多地區(qū)業(yè)務(wù)、大量鏡像下載需求
1638779411313.png

配置可信任(主節(jié)點(diǎn)配置)

                                     
[root@es3 ~]#  vi /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
  "insecure-registries":["reg.pcitc.com","192.168.153.20","192.168.153.25"]
}

[root@es3 ~]# systemctl daemon-reload  
[root@es3 ~]# systemctl restart docker
[root@k8s-~ harbor]# docker-compose down
[root@k8s-~ harbor]# docker-compose up -d

主節(jié)點(diǎn)登錄從節(jié)點(diǎn)

[root@es3 harbor]# docker login 192.168.153.20

Login Succeeded

[root@es3 harbor]# docker login 192.168.153.25

Login Succeeded

倉(cāng)庫(kù)管理(主機(jī))

1638781763029.png

1638781827743.png

[圖片上傳中...(1638782524681.png-af5ed0-1638791875762-0)]


1638781850506.png

復(fù)制管理(主機(jī))

1638782013515.png

1638782093429.png

1638782113993.png

推送鏡像驗(yàn)證

[root@es3 harbor]# docker tag centos:7 reg.pcitc.com/library/centos:7
[root@es3 harbor]# docker push reg.pcitc.com/library/centos:7
1638782524681.png
1638782542213.png
1638782570224.png

Harbor 運(yùn)維維護(hù)

容器 功能
harbor-core 配置管理中心
harbor-db PG數(shù)據(jù)庫(kù)
harbor-jobservice 負(fù)責(zé)鏡像復(fù)制
harbor-log 記錄操作日志
harbor-portal Web管理頁(yè)面和API
nginx 前端代理,負(fù)責(zé)前端頁(yè)面和鏡像上傳/下載轉(zhuǎn)發(fā)
redis 會(huì)話
registryctl 鏡像存儲(chǔ)
容器數(shù)據(jù)持久化目錄:/data
日志文件目錄:/var/log/harbor
數(shù)據(jù)庫(kù)做好定期備份
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容