溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Docker之Registry私有倉庫+Harbor私有倉庫的搭建

發(fā)布時間:2020-04-10 13:25:19 來源:網(wǎng)絡(luò) 閱讀:1059 作者:warrent 欄目:云計算

博文大綱:

  • 一、搭建Registry私有倉庫
  • 二、配置Harbor私有倉庫

這篇博文寫的是兩種不同的搭建Docker私有倉庫的方法,都必須要基于一個Docker服務(wù)器上,相比較而言,Harbor功能更強大些。

之前詳細寫過Registry私有倉庫的搭建方法,這里的Registry只是有一點配置不一樣而已,若要搭建Registry私有倉庫,最好結(jié)合:Docker鏡像的創(chuàng)建+構(gòu)建私有倉庫及其使用方法這篇博文來,對比其不一樣的地方,選擇適合自己的方案。

一、搭建Registry私有倉庫

環(huán)境準備:

  • 兩臺centos 7.3,一臺為Docker私有倉庫服務(wù)器,另一臺為測試端,兩臺須可ping通;
  • 參考博文:Docker的安裝詳細配置,對兩臺服務(wù)器進行安裝docker環(huán)境。

1、開始配置第一臺Docker私有倉庫服務(wù)器:

[root@docker ~]# docker pull registry     #下載registry鏡像
[root@docker ~]# docker run -tid --name registry --restart=always -p 5000:5000 -v /data/registry:/var/lib/registry registry
#運行該鏡像,各個選項含義如下:
# -tid:以后臺持久運行,并分配一個可交互的為終端
# --name registry  :給容器定義一個名字
#  --restart=always:該容器可以隨著docker服務(wù)的啟動而啟動
# -p:將容器的端口映射到宿主機,冒號前面是宿主機的端口,冒號后面是容器的端口,registry的默認端口是5000
# -v:將宿主機的目錄掛載到容器中,冒號前面是宿主機的目錄,冒號后面是容器中的目錄
[root@docker ~]# docker images   #查看當前的鏡像
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              0f3e07c0138f        2 weeks ago         220MB
registry            latest              f32a97de94e1        7 months ago        25.8MB
[root@docker ~]# docker tag centos:latest 192.168.20.7:5000/centos:latest   
#更改鏡像名稱,以便符合私有倉庫名稱規(guī)范
#注:私有倉庫鏡像的命名規(guī)則:192.168.20.7:5000/XXX(宿主機的IP:5000端口/鏡像名稱)
[root@docker ~]# vim /usr/lib/systemd/system/docker.service   #更改docker的配置文件,以便指定私有倉庫
ExecStart=/usr/bin/dockerd -H unix:// --insecure-registry 192.168.20.7:5000
#定位到上面那行,在后面添加“--insecure-registry”并指定私有倉庫的IP及端口,然后保存退出即可 
[root@docker ~]# systemctl daemon-reload     #重載配置文件
[root@docker ~]# systemctl restart docker    #重啟docker服務(wù)
[root@docker ~]# docker push 192.168.20.7:5000/centos:latest     #上傳鏡像至私有倉庫
[root@docker ~]# curl 192.168.20.7:5000/v2/_catalog   #查看私有倉庫中的鏡像
{"repositories":["centos"]}
[root@docker ~]# curl 192.168.20.7:5000/v2/centos/tags/list   #查看鏡像的詳細信息
{"name":"centos","tags":["latest"]}

2、第二臺Docker服務(wù)器進行如下操作:

[root@docker02 ~]# vim /usr/lib/systemd/system/docker.service   #編輯主配置文件
ExecStart=/usr/bin/dockerd -H unix:// --insecure-registry 192.168.20.7:5000
#定位到上面那行,添加“--insecure-registry”指定私有倉庫的IP及參數(shù)
#添加完成后,保存退出即可
[root@docker02 ~]# systemctl daemon-reload   #重載配置文件
[root@docker02 ~]# systemctl restart docker    #重啟docker服務(wù)
[root@docker02 ~]# docker pull 192.168.20.7:5000/centos:latest
#下載私有倉庫的中的鏡像
[root@docker02 ~]#  docker images      #確認下載的鏡像

二、配置Harbor私有倉庫

Harbor私有倉庫和第一個Registry私有倉庫相比較而言,功能強大很多,并且支持web圖形化管理,推薦使用。

環(huán)境和搭建Registry的一樣,如下:

  • 兩臺centos 7.3,一臺為Docker私有倉庫服務(wù)器,另一臺為測試端,兩臺須可ping通;
  • 參考博文:Docker的安裝詳細配置,對兩臺服務(wù)器進行安裝docker環(huán)境。

1、打開github.com官網(wǎng),在登錄頁面的右上角搜索compose找到docker/compose再找releases,(網(wǎng)址:https://github.com/docker/compose/releases) 如下:

Docker之Registry私有倉庫+Harbor私有倉庫的搭建

復(fù)制自己所需版本下提供的兩條命令,在第一臺Docker服務(wù)器上依次進行操作:

[root@docker ~]# yum -y install yum-utils device-mapper-persistent-data lvm2  #安裝依賴包
[root@docker ~]# curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#復(fù)制官網(wǎng)上的上述命令
[root@docker ~]# chmod +x /usr/local/bin/docker-compose  #賦予該命令執(zhí)行權(quán)限
[root@docker ~]# docker-compose -version   #查看其版本信息
docker-compose version 1.24.1, build 4667896b

2、去github官網(wǎng)搜索harbor,再點擊goharbor/harbor,再點擊“releases”,根據(jù)自己所需,下載相應(yīng)的版本,上傳至服務(wù)器(網(wǎng)址如下:https://github.com/goharbor/harbor/releases 也可下載在線安裝的包,我沒試過,可自行嘗試),如下:

Docker之Registry私有倉庫+Harbor私有倉庫的搭建

[root@docker ~]# tar zxf harbor-offline-installer-v1.7.4.tgz -C /usr/src
#將下載的安裝包解壓到指定目錄
[root@docker src]# cd /usr/src/harbor/    #切換至解壓后的目錄中
[root@docker harbor]# vim harbor.cfg     #編輯這個配置文件
           ..............#省略部分內(nèi)容
hostname = 192.168.20.7    #將hostname更改為本機IP
harbor_admin_password = Harbor12345    #這行指定的是登錄harbor的登錄名及密碼
#默認用戶為“admin”,密碼為“Harbor12345”
           ..............#省略部分內(nèi)容
[root@docker harbor]# ./install.sh      #執(zhí)行自帶的安裝腳本  
[root@docker harbor]# netstat -antp | grep 80    #確定80端口正在監(jiān)聽
[root@docker harbor]# vim /usr/lib/systemd/system/docker.service   #編輯docker主配置文件
ExecStart=/usr/bin/dockerd -H unix:// --insecure-registry 192.168.20.7:80
#定位到該行,添加“--insecure-registr”以便指定harbor的IP及其監(jiān)聽端口
[root@docker harbor]# systemctl daemon-reload   #重新加載配置文件
[root@docker harbor]# systemctl restart docker    #重啟docker服務(wù)
[root@docker harbor]# docker-compose stop    #停止所有容器
[root@docker harbor]# docker-compose start    #啟動所有容器

3、使用瀏覽器訪問harbor服務(wù)器的IP地址,使用配置文件中指定的用戶名及密碼登錄(默認用戶為“admin”,密碼為“Harbor12345”):

Docker之Registry私有倉庫+Harbor私有倉庫的搭建

**

4、點擊“新建項目”:

Docker之Registry私有倉庫+Harbor私有倉庫的搭建

5、定義項目名稱:

Docker之Registry私有倉庫+Harbor私有倉庫的搭建

6、回到Harbor服務(wù)器,開始想Harbor上傳鏡像:

[root@docker harbor]# docker login -u admin -p Harbor12345 192.168.20.7:80   #命令行登錄到harbor
[root@docker harbor]# docker tag centos:latest 192.168.20.7:80/test/centos:latest    #更改鏡像名稱
#注意要上傳至harbor倉庫的命名規(guī)范,其中test是剛才在harbor創(chuàng)建的項目
[root@docker harbor]# docker push 192.168.20.7:80/test/centos:lates   #上傳至harbor

7、測試,第二臺Docker的測試端配置如下:

[root@docker02 ~]# vim /usr/lib/systemd/system/docker.service    #編輯其配置文件
ExecStart=/usr/bin/dockerd -H unix:// --insecure-registry 192.168.20
.7:80
#指定Harbor服務(wù)器的IP地址及80端口
[root@docker02 ~]# systemctl daemon-reload
[root@docker02 ~]# systemctl restart docker    #重啟docker
[root@docker02 ~]# docker login -u admin -p Harbor12345 192.168.20.7:80
#登錄到私有倉庫
[root@docker02 ~]# docker pull 192.168.20.7:80/test/centos:latest
 #至此即可下載第一臺docker服務(wù)器上傳的鏡像

———————— 本文至此結(jié)束,感謝閱讀 ————————

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI