Harbor仓库管理
Harbor的概念:
harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是 Docker Registry的更高级封装
Harbor的特点:
1、天生拥有UI界面
2、基于角色的访问控制
3、支持日志审计(如日志的上传下载)
4、支持漏洞扫描
harbor的基本组件
组件 | 功能 |
---|---|
harbor-adminserver | 配置管理中心 |
harbor-db | 数据库 |
harbor-jobservice | 镜像复制 |
harbor-log | 日志操作 |
harbor-ui | Web管理页面和API |
nginx | 前端代理,负责前端页面和镜像上传/下载转发 |
redis | 会话 |
registry | 镜像存储 |
harbor安装
1、下载安装包
Harbor官方地址:https://github.com/goharbor/harbor/releases下载最新版安装包
2、准备环境
安装docker-compose
3、生产证书
使用https的方式安装部署Harbor,这样更安全,使用域名
创建证书目录
mkdir -p /tmp/data/cert && cd /tmp/data/cert && ll
生成CA证书私钥
openssl genrsa out ca.key 4096
生成CA证书
调整-subj选项中的值以反映您的组织,如果使用FQDN连接Harbor主机,则必须将其指定为通用名称(CN)属性
openssl req -x509 -new -nodes -sha512 -days 3650 \
-subj "/C=CN/ST=Beijing/L=Beijing/O=xxx/OU=xxx/CN=www.edhug.com" \
-key ca.key \
-out ca.crt
这里subj是主题的意思含义如下
C=国家,ST=省(市),L=区(县、市),O=组织机构,OU=组织单位,CN=通用名称,域名
生成服务器证书
证书通常包含一个.crt文件和一个.key文件,例如yourdomain.com.crt和yourdomain.com.key
生成私钥
openssl genrsa -out itcast.harbor.com.key 4096
生成证书签名请求(CSR)
调整-subj选项中的值以反映您的组织。如果使用FQDN连接Harbor主机,则必须将其指定为通用名称(CN)属性,并在密钥和CSR文件名中使用它
openssl req -sha512 -new \
-subj "/C=CN/ST=Beijing/L=Beijing/O=itcast/OU=Personal/CN=itcast.harbor.com" \
-key itcast.harbor.com.key \
-out itcast.harbor.com.csr
生成一个x509 v3扩展文件
无论您使用FQDN还是IP地址连接到Harbor主机,都必须创建此文件,以便可以为您的Harbor主机生成符合主题备用名称(SAN)和x509 v3的证书扩展要求,替换DNS条目以反映您的域。
``
cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1=itcast.harbor.com
DNS.2=itcast.harbor
DNS.3=harbor
EOF
生产主机证书
使用该v3.ext文件为您的Harbor主机生成证书,注意将yourdomain.comCRS和CRT文件名中的替换为Harbor主机名。
openssl x509 -req -sha512 -days 3650 \
-extfile v3.ext \
-CA ca.crt -CAkey ca.key -CAcreateserial \
-in itcast.harbor.com.csr \
-out itcast.harbor.com.crt
离线安装
接下来我们进行离线安装
进入目录
将Harbor压缩到上传到/usr/local目录,然后进行解压操作
cd /usr/local
解压安装包
解压harbor的安装包
tar -zxf harbor-offline-installer-v2.7.1.tgz
进入目录 然后将harbor.yml.tmp复制一份并该命为harbor.yml
cd harbor
cp harbor.yml.tmpl harbor.yml
标签:itcast,证书,Harbor,仓库,key,harbor,Docker,com
From: https://www.cnblogs.com/Eduhg/p/18638047