harbor搭建及使用

1 系統(tǒng)及軟件版本

1.1 系統(tǒng)版本

# uname -a

Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

# cat /etc/redhat-release

CentOS Linux release 7.5.1804 (Core)

1.2 軟件版本

1、 docker版本:18.06.1-ce

#docker -v

Docker version 18.06.1-ce, build e68fc7a

2、 docker-compose版本:1.23.1

# docker-compose version

docker-compose version 1.23.1, build b02f130

docker-py version: 3.5.1

CPython version: 2.7.5

OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017

3、harbor版本:1.5.0

2 安裝依賴

2.1 Docker安裝

請參考centos7安裝dockerCE

2.2 docker-compose安裝

1、 配置阿里的epel源

# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

2、 安裝Python-pip

# yum install python-pip -y

3、 升級Python-ppip

# pip install --upgrade pip

4、 安裝docker-compose

# pip install docker-compose

5、查看docker-compose版本

# docker-compose -v
docker-compose version 1.23.1, build b02f130

3 安裝harbor

3.1 下載安裝包

1、 可以在網(wǎng)站上下載離線安裝包。

地址:https://github.com/goharbor/harbor/releases

2、Linux服務器上可以直接下載1.5.0的離線安裝包

# wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.5.0.tgz

2、 下載會很慢,可以從我的百度云下載

鏈接:https://pan.baidu.com/s/1I75uievCd4kVi0eIpXHkZQ
提取碼:rz1u

3、 國內(nèi)harbor離線版鏡像

地址:http://harbor.orientsoft.cn/

3.2 上傳解壓

# tar -zxvf harbor-offline-installer-v1.5.0.tgz

# cd harbor

3.3 修改配置文件

Harbor的配置文件為harbor.cfg。此次配置我使用http訪問。而不是https訪問。所以可以不需要證書。

# cat harbor.cfg |grep -v ^$|grep -v ^#

_version = 1.5.0

hostname = [www.harbor2.com](http://www.harbor2.com) #需要寫IP地址或者域名

ui_url_protocol = http

max_job_workers = 50

customize_crt = on

ssl_cert = /data/cert/server.crt #沒有目錄需要創(chuàng)建

ssl_cert_key = /data/cert/server.key #沒有目錄需要創(chuàng)建

secretkey_path = /data

admiral_url = NA

log_rotate_count = 50

log_rotate_size = 200M

http_proxy =

https_proxy =

no_proxy = 127.0.0.1,localhost,ui

email_identity =

email_server = smtp.mydomain.com

email_server_port = 25

email_username = sample_admin@mydomain.com

email_password = abc

email_from = admin <sample_admin@mydomain.com>

email_ssl = false

email_insecure = false

harbor_admin_password = 12345 #harbor登錄密碼

auth_mode = db_auth

ldap_url = ldaps://ldap.mydomain.com

ldap_basedn = ou=people,dc=mydomain,dc=com

ldap_uid = uid

ldap_scope = 2

ldap_timeout = 5

ldap_verify_cert = true

ldap_group_basedn = ou=group,dc=mydomain,dc=com

ldap_group_filter = objectclass=group

ldap_group_gid = cn

ldap_group_scope = 2

self_registration = on

token_expiration = 30

project_creation_restriction = everyone

db_host = mysql

db_password = root123

db_port = 3306

db_user = root

clair_db_host = postgres

clair_db_password = password

clair_db_port = 5432

clair_db_username = postgres

clair_db = postgres

uaa_endpoint = uaa.mydomain.org

uaa_clientid = id

uaa_clientsecret = secret

uaa_verify_cert = true

uaa_ca_cert = /path/to/ca.pem

registry_storage_provider_name = filesystem

registry_storage_provider_config =

3.4 安裝并啟動

安裝之前需要啟動docker

執(zhí)行安裝腳本

# ./install.sh

4 訪問harbor web界面

啟動完成后,可以直接訪問安裝harbor的IP地址。啟動的是80端口。賬號密碼為:admin/12345(配置文件里修改過)


進入界面

5 使用harbor上傳下載鏡像

Docker執(zhí)行本地登錄操作

5.1 連接harbor

# docker login [www.harbor2.com](http://www.harbor2.com)

輸入用戶名admin/Harbor12345

Login Succeeded #顯示此字段說明登錄成功可以上傳下載鏡像

5.2 連接報錯解決

5.2.1 報錯內(nèi)容

Error response from daemon: Get https://www.harbor2.com/v2/: dial tcp 10.10.8.113:443: connect: connection refused

5.2.2 報錯分析

Docker自從1.3.X之后docker registry交互默認使用的是HTTPS,但是我們搭建私有鏡像默認使用的是HTTP服務,所以與私有鏡像交時出現(xiàn)以上錯誤。

5.2.3 解決問題

一、 方法一

1、修改啟動文件

# vi /usr/lib/systemd/system/docker.service
……
ExecStart=/usr/bin/dockerd --insecure-registry www.harbor2.com
#修改此處并且后邊添加IP地址或者域名
……

2、重新啟動docker

# systemctl daemon-reload
# systemctl restart docker

二、方法二

1、修改或添加配置

# cd /etc/docker/
# vi daemon.json
{
 "insecure-registries" : ["www.harbor2.com"]
}

2、重新啟動docker

# systemctl daemon-reload
# systemctl restart docker

5.3 上傳鏡像

5.3.1 Harbor上創(chuàng)建新項目供上傳使用

5.3.2 Docker服務器給鏡像打標簽

[root@docker1 ~]# docker images

REPOSITORY TAG     IMAGE ID CREATED SIZE

tomcat 7.0.90 4cbf48630b46 6 weeks ago 195MB

# docker tag tomcat:7.0.90 www.harbor2.com/test/tomcat:7.0.90

# docker images

REPOSITORY TAG IMAGE ID  CREATED  SIZE

tomcat          7.0.90  4cbf48630b46 6 weeks ago 195MB

www.harbor2.com/test/tomcat 7.0.90 4cbf48630b46  6 weeks ago 195MB

5.3.3 上傳

# docker push www.harbor2.com/test/tomcat:7.0.90

The push refers to repository [www.harbor2.com/test/tomcat]

9c2f1836d493: Mounted from common/centos

7.0.90: digest: sha256:20f32279b5e4801424c21f56c2f645fc2109d81bdc3cc6855e7e982b5d3d334b size: 529

5.4 下載鏡像

5.4.1 刪除本地鏡像

# docker rmi tomcat:7.0.90

# docker rmi www.harbor2.com/test/tomcat:7.0.90

5.4.2 下載harbor上的鏡像

# docker pull www.harbor2.com/test/tomcat:7.0.90

# docker images

REPOSITORY         TAG IMAGE ID CREATED SIZE

www.harbor2.com/test/tomcat 7.0.90 4cbf48630b46 6 weeks ago    195MB
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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

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