docker恋爱史--harbor

本文详细介绍了如何在Docker环境中使用Harbor私有仓库,并通过HTTPS进行安全连接的全过程,包括CA证书的创建、配置Harbor及客户端环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:docker  docker-compose 

1 创建ca证书

mkdir -p /data/cert
cd /data/cert
2生成 CA 的 key
openssl genrsa -out ca.key 4096
3生成 CA 的 crt
openssl req -x509 -new -nodes -sha512 -days 3650 \
    -subj "/C=CN/ST=Beijing/L=Beijing/O=chinatelecom/OU=ecloudcaas/CN=192.168.1.198" \
    -key ca.key \
    -out ca.crt

 生成自己域名的 key
openssl genrsa -out 192.168.1.198.key 4096


生成自己域名的 csr

openssl req -sha512 -new \
    -subj "/C=CN/ST=Beijing/L=Beijing/O=chinatelecom/OU=ecloudcaas/CN=192.168.1.198" \
    -key 192.168.1.198.key \
    -out 192.168.1.198.csr 

生成一个 openssl 命令需要的外部配置文件

cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth 
subjectAltName = @alt_names
[alt_names]
IP=192.168.1.198
EOF

通过 ext 和 csr 生成 crt

openssl x509 -req -sha512 -days 3650 \
    -extfile v3.ext \
    -CA ca.crt -CAkey ca.key -CAcreateserial \
    -in 192.168.1.198.csr \
    -out 192.168.1.198.crt

将服务端的 crt 转换成客户端用的 cert
cd /data/cert
openssl x509 -inform PEM -in 192.168.1.198.crt -out 192.168.1.198.cert

将带域名的 cert,key 和 ca.crt 拷贝到 docker client 所在主机的 /etc/docker/certs.d/192.168.1.198/ 目录下

——————————————————————至此 https 前置设置结束

 

在docker客户端(或者说需要向这个仓库提交镜像的docker主机)注意 json 属性之间要用逗号分隔哦

如果你没有这个文件 那就这么执行  否则 请直接添加  "insecure-registries":["http://192.168.1.198"]
cat > /etc/docker/daemon.json << EOF
{ "insecure-registries":["http://192.168.1.198"] }
EOF

systemctl daemon-reload
systemctl restart docker

 

安装 

mkdir -p /home/harbor/
wget -P /home/harbor/ https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-offline-installer-v1.9.0.tgz
cd /home/harbor/
tar xf harbor-offline-installer-v1.9.0.tgz
cd /home/harbor/harbor
cp harbor.yml harbor.yml.bak

cd /home/harbor/harbor/

修改配置文件
vim harbor.yml
https:
   port: 443
   certificate: /home/harbor/cert/192.168.1.198.crt 
   private_key: /home/harbor/cert/192.168.1.198.key

设置localhost = ip #其他docker访问仓库的ip 或者域名

cd /home/harbor/harbor/
./prepare   

./install

————————————————————————至此  安装结束

如果哪里有问题 请直接说出来我会及时纠正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值