harbor支持https訪問

前提:使用centos7node

node1:192.168.6.131
python

node2:192.168.6.129nginx

實現服務habror服務器用https。web


node1:設置爲harbor服務器;docker

node2:設置爲docker服務器。vim


與上一篇文章安裝步驟略有不一樣,主要是在配置ssl證書部分,其餘安裝docker、docekr-compose、harbor都同樣:centos


在兩臺節點上都安裝docker:瀏覽器

前提配置好yum倉庫源。安全

yum -y install dockerbash

systemctl start docker

systemctl enable docker


此外,docker的image存放位置,使用nfs共享目錄。

yum install nfs-utils

注意:兩節點都安裝nfs軟件包。


建立共享目錄掛載點:

mkdir /data/imagedata
vim /etc/exports
添加:
/data/imagedata *(rw no_root_squash)

啓動nfs服務:

systemctl start nfs
systemctl enable nfs

顯示nfs可掛載目錄:

showmount -e 192.168.6.129

測試掛載nfs:

mount -t nfs 192.168.6.129:/data/imagedata /mnt/
df -TH

測試成功後卸載:

umount /mnt

在docker服務啓動前,掛載nfs共享目錄:

mkdir /var/lib/docker

配置自動掛載:

vim /etc/fstab
添加:
192.168.6.129:/data/imagedata /var/lib/docker nfs  defaults,_netdev 0 0

mount -a
df -TH

啓動docker:

systemctl start docker
systemctl enable docker

啓動docker後,會自動在/var/lib/docker目錄下生成不少文件。


在node1上安裝harbor:

yum -y install python-pip
pip install docker-compose
tar xf harbor-1.2.2.tgz
cd harbor

修改harbor.cfg配置文件:

vim harbor.cfg
修改:
hostname = harbor.magedu.example.com #(本機ip192.168.6.131或域名爲了配置ssl證書)
ui_url_protocol = https
harbor_admin_password = 123456
ssl_cert = /usr/local/src/harbor/certs/server.crt
ssl_cert_key = /usr/local/src/harbor/certs/server.key

說明:ssl相關證書,下面在製做。


時間必須同步,不然證書有問題:

ntpdate time1.aliyun.com
hwclock -w

在harbor命令下建立證書目錄:

mkdir /usr/local/src/harbor/certs
cd /usr/local/src/harbor/certs

生成私有key:

openssl genrsa -out server.key 2048

生成證書:

openssl req -x509 -new -nodes -key server.key -subj "/CN=harbor.magedu.example.com" -days 7120 -out server.crt

運行Harbor:

./install.sh

配置hosts解析文件:

vim /etc/hosts
192.168.6.131  harbor.magedu.example.com

注意:只要是在harbor上傳下載的主機,就配置hosts文件。

這樣,瀏覽器訪問:http://harbor.magedu.example.com,提示使用https不安全的訪問。


配置docker服務器支持ssl訪問harbor服務器:

注意:全部docker服務器要想服務harbor的https,都應該配置以下操做。

mkdir -p /etc/docker/certs.d/harbor.magedu.example.com

說明:

在dcoker目錄下,建立certs.d目錄,並在其下建立以訪問harbor的域名爲目錄。

把證書拷貝到該目錄下:

cd /etc/docker/certs.d/harbor.magedu.example.com
scp node2:/usr/local/src/harbor/certs/server.crt /usr/local/src/harbor/certs/

須要重啓docker:

systemctl restart docker


使用域名登陸harbor:

docker login harbor.magedu.example.com

輸入用戶名:admin

輸入密碼:123456


製做鏡像:

docker tag 192.168.6.129/server1/centos-nginx-base:web2 harbor.magedu.example.com/baseimages/centos-nginx-base:web2

上傳鏡像到帶有https訪問的harbor倉庫:

docker push harbor.magedu.example.com/baseimages/centos-nginx-base:web2
相關文章
相關標籤/搜索