二、環境准備
1)、安裝並啟動Docker
2)、安裝Docker-compose:
1、下載指定版本的docker-compose
#curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
2、對二進制文件賦可執行權限
# chmod +x /usr/local/bin/docker-compose
3、測試下docker-compose是否安裝成功
# docker-compose --version
三、Harbor服務搭建及啟動
1)、下載Harbor安裝文件
[root@localhost ~]# mkdir -p /harbor
[root@localhost ~]# cd /harbor/
[root@localhost harbor]# yum -y install wget
[root@localhost harbor]# wget https://github.com/vmware/harbor/releases/download/v1.1.2/harbor-online-installer-v1.1.2.tgz
[root@localhost harbor]# ls
harbor-online-installer-v1.1.2.tgz
[root@localhost harbor]# tar -zxf harbor-online-installer-v1.1.2.tgz
2)、配置Harbor
[root@localhost harbor]# ls
harbor harbor-online-installer-v1.1.2.tgz
[root@localhost harbor]# cd harbor
[root@localhost harbor]# ls
common docker-compose.notary.yml docker-compose.yml harbor_1_1_0_template harbor.cfg install.sh LICENSE NOTICE prepare upgrade
[root@localhost harbor]# vi harbor.cfg
配置文件harbor.cfg詳解:
--------------------------------------------------------------------------------
# hostname設置訪問地址,可以使用ip、域名,不可以設置為127.0.0.1或localhost
hostname = 192.168.126.162
# 訪問協議,默認是http,也可以設置https,如果設置https,則nginx ssl需要設置on
ui_url_protocol = http
# mysql數據庫root用戶默認密碼root123,實際使用時修改下
db_password = 123456
max_job_workers = 3
customize_crt = on
ssl_cert = /data/cert/server.crt
ssl_cert_key = /data/cert/server.key
secretkey_path = /data
admiral_url = NA
# 郵件設置,發送重置密碼郵件時使用
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
# 啟動Harbor后,管理員UI登錄的密碼,默認是Harbor12345
harbor_admin_password = 123456
# 認證方式,這里支持多種認證方式,如LADP、本次存儲、數據庫認證。默認是db_auth,mysql數據庫認證
auth_mode = db_auth
# LDAP認證時配置項
ldap_url = ldaps://ldap.mydomain.com
#ldap_searchdn = uid=searchuser,ou=people,dc=mydomain,dc=com
#ldap_search_pwd = password
ldap_basedn = ou=people,dc=mydomain,dc=com
#ldap_filter = (objectClass=person)
ldap_uid = uid
ldap_scope = 3
ldap_timeout = 5
# 是否開啟自注冊
self_registration = on
# token有效時間,默認30分鍾
token_expiration = 30
# 用戶創建項目權限控制,默認是everyone(所有人),也可以設置為adminonly(只能管理員)
project_creation_restriction = everyone
verify_remote_cert = on
--------------------------------------------------------------
3)、啟動Harbor
修改完配置文件后,在的當前目錄執行./install.sh,Harbor服務就會根據當期目錄下的docker-compose.yml開始下載依賴的鏡像,檢測並按照順序依次啟動各個服務
#./prepare #配置Harbor
[root@localhost harbor]# ./install.sh
Harbor依賴的鏡像及啟動服務如下:
[root@localhost harbor]# docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------------------------------------------------------
harbor-adminserver /harbor/harbor_adminserver Up
harbor-db docker-entrypoint.sh mysqld Up 3306/tcp
harbor-jobservice /harbor/harbor_jobservice Up
harbor-log /bin/sh -c crond && rm -f ... Up 127.0.0.1:1514->514/tcp
harbor-ui /harbor/harbor_ui Up
nginx nginx -g daemon off; Up 0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->80/tcp
registry /entrypoint.sh serve /etc/ ... Up 5000/tcp
啟動完成后,訪問剛設置的hostname即可,默認是80端口,如果端口占用,可以去修改docker-compose.yml文件中,對應服務的端口映射
1)admin登錄
使用docker login出現如下問題:
[root@localhost ~]# docker login 192.168.126.162
Username: admin
Password: 123456
Error response from daemon: Get https://192.168.126.162/v2/: read tcp 192.168.126.162:49654->192.168.126.162:443: read: connection reset by
peer
--insecure-registry=http://192.168.111.140
–insecure-registry=http://192.168.111.140
修改當前登錄的這台機器的/etc/docker/daemon.json,把這個Habor地址加進去,修改后如下:(所有節點都得有)
修改后重啟docker:
systemctl daemon-reload
systemctl restart docker.service 即可成功!