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
相关文章
相关标签/搜索