Harbor 企業級 Docker Registry

wadeson發表於2017-11-24
1、安裝docker、docker-compose
2、下載HarBor並安裝
這裡採用離線安裝
[root@master ~]# tar xf harbor-offline-installer-v1.2.2.tgz
[root@master ~]# cd harbor
修改配置檔案:/root/harbor/harbor.cfg
只需要修改幾處就行
hostname = 192.168.101.14
db_password = redhat
3、開始安裝
# sh /root/harbor/install.sh
部分安裝截圖:
出現如何結果表示安裝成功:
檢視生成的映象:
訪問web介面:
預設賬號為admin,密碼在配置檔案中:
##The initial password of Harbor admin, only works for the first time when Harbor starts. 
#It has no effect after the first launch of Harbor.
#Change the admin password from UI after launching Harbor.
harbor_admin_password = Harbor12345
修改docker的/etc/docker/daemon.json:由於安裝的HarBor是採用的http並沒有TLS認證:
[root@master harbor]# cat /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://cbd49ltj.mirror.aliyuncs.com"],
  "insecure-registries": ["192.168.101.14"]
}
重啟docker:
# systemctl restart docker
如何push:
在命令列執行:
[root@master harbor]# docker login 192.168.101.14
Username: admin
Password:                  密碼也是Harbor12345(就是登入的admin賬號)
Login Succeeded

現在使用另一個host主機來搭建docker環境,然後將映象推送到HarBor上:

現在在192.168.101.15上安裝docker,使用HarBor這個服務(在192.168.101.14上搭建的)
配置使用HarBor:
[root@node1 ~]# cat /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://cbd49ltj.mirror.aliyuncs.com"],
  "insecure-registries": ["192.168.101.14"]
}
[root@node1 ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              d123f4e55e12        2 weeks ago         197MB
[root@node1 ~]# docker tag centos:latest 192.168.101.14/library/centos:latest     
[root@node1 ~]# docker images
REPOSITORY                      TAG                 IMAGE ID            CREATED             SIZE
192.168.101.14/library/centos   latest              d123f4e55e12        2 weeks ago         197MB
centos                          latest              d123f4e55e12        2 weeks ago         197MB

使用admin賬號登入HarBor:

[root@node1 ~]# docker login 192.168.101.14
Username: admin
Password: 
Login Succeeded
預設的專案library:
[root@node1 ~]# docker push 192.168.101.14/library/centos
The push refers to a repository [192.168.101.14/library/centos]
cf516324493c: Pushed 
latest: digest: sha256:224d7b12549c04bba833d4626a5c51113290e55bd754d39f72d1a437539b3c68 size: 529

然後從HarBor的web介面檢視library專案下的映象:

harbor操作映象:
在專案中標記映象:
docker tag SOURCE_IMAGE[:TAG] 192.168.101.14/library/IMAGE[:TAG]
推送映象到當前專案:
docker push 192.168.101.14/library/IMAGE[:TAG]

 

建立使用者:
建立專案:

[root@node1 ~]# docker push 192.168.101.14/wadeson/centos       
The push refers to a repository [192.168.101.14/wadeson/centos]
cf516324493c: Preparing 
denied: requested access to the resource is denied
使用wadeson使用者推送不上去,需要將wadeson使用者新增到wadeson專案組:

[root@node1 ~]# docker push 192.168.101.14/wadeson/centos
The push refers to a repository [192.168.101.14/wadeson/centos]
cf516324493c: Mounted from library/centos 
latest: digest: sha256:224d7b12549c04bba833d4626a5c51113290e55bd754d39f72d1a437539b3c68 size: 529

於是http無TLS認證的HarBor registry搭建完成

相關文章