harbor介绍
Harbor 是由 VMware 公司开源的企业级的 Docker Registry 管理项目,它包括权限管理 (RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。官网地址 Harbor (goharbor.io)
安装依赖
harbor依赖于docker 和docker-compose
需求先安装docker和docker-compose
1、安装docker
使用yum安装docker
2、安装docker-compose
下载docker-compose
wget https://github.com/docker/compose/releases/download/v2.12.1/docker-compose-linux-x86_64
[root@harbor ~]# cp docker-compose-linux-x86_64 /usr/local/bin/docker-compose
[root@harbor ~]# chmod +x /usr/local/bin/docker-compose
3、下载harbor
harbor下载地址:Releases · goharbor/harbor (github.com)
解压harbor
tar -xvf harbor-offline-installer-v2.6.1.tgz -C /usr/local/harbor
自签证书
官方自签名证书说明:
Harbor docs | Configure HTTPS Access to Harbor (goharbor.io)
如果使用containerd部署容器使用harbor则需要参考官网说明,与传统docker部署的Harbor自签发 SSL证书不同需要使用SAN包含多域名签发对象:
1、创建自签发证书
创建目录
mkdir /usr/local/harbor/certs
cd certs/
创建私钥
openssl genrsa -out ca.key 4096
使用私钥创建自签CA证书
C,Country,代表国家
ST,STate,代表省份
L,Location,代表城市
O,Organization,代表组织,公司
OU,Organization Unit,代表部门
CN,Common Name,代表服务器域名
emailAddress,代表联系人邮箱地址。
客户端私钥证书生成
生成多个域名请求
使用自签名CA签发证书
修改域名和https SSL签发的私钥和证书路径
将模板文件复制一份新的yml
修改yml文件
vim harbor.yml
必须修改几个项目
1、证书地址
2、hostname
3、data路径
4、登录密码
建立Harbor数据目录,并使用数据盘挂载到/data目录
部署harbor
root@Harbor:/usr/local/harbor# ./install.sh --help
报错处理:
1、prepare base dir is set to /usr/local/harbor
Error happened in config validation...
ERROR:root:Please specify hostname
yml文件未设置hostname
2、Error happened in config validation...
ERROR:root:Error: The protocol is https but attribute ssl_cert is not set
yml未配置证书。
安装完成截图:
查看端口:
网站登录
登录harbor
新建一个新的公开目录
docker客户端配置
docker 客户端配置证书验证,并推送镜像到Harbor
#docker客户端创建证书保留位置
root@ubuntu20:~# mkdir /etc/docker/certs.d/harbor.cib.com.cn -p
#Harbor将证书发送给客户端
[root@localhost certs]# scp cib.com.cn.crt 192.168.28.171:/etc/docker/certs.d/harbor.cib.com.cn/
#docker客户端配置hosts域名解析Harbor
使用docker登录harbor
镜像管理
docker 对对镜像打标签
本地镜像
推送镜像
harbor服务器情况
使用另外一台node登录harbor