docker的harbor仓库登录问题

目录

一、问题描述 

二、证书信任问题

三、DNS解析问题

四、解决 


参考链接:Docker login Harbor报错解决:Error response from daemon: Get https:..-阿里云开发者社区

一、问题描述 

问题:

挂机或者挂机重启之后harbor登录不上 

 查看日志查找问题:

[root@docker ~]# journalctl -u docker.service -n 50
[root@docker reg.zx.org]# docker logs 容器id

包含以下问题 

# 1、容器重启失败
level=error msg="failed to start container" container=6bf913f9a5b0c395ca68505d39c3f0aa2e25054730bec1d49b64cf70a1530809 error="failed to create ta

# ​2、注册表问题
level=error msg="Handler for POST /v1.46/auth returned error: Get \"https://reg.zx.org/v2/\": dial tcp 172.25.254.111:443: connect: connection refused"

​# 3、DNS查询失败
level=error msg="[resolver] failed to query external DNS server"

# 4、容器无法启动
level=error msg="failed to start container" container=...

二、证书信任问题

Self-signed Certificate (自签名证书)没有通过可信的证书颁发机构 (CA) 签署,所以验证失败,提示 verify error:num=18:self-signed certificate

将自签名证书添加到系统的可信证书存储中

#生成认证key和证书
[root@docker-node1 ~]# openssl req -newkey rsa:4096  -nodes -sha256 -keyout certs/zx.org.key \
> -addext "subjectAltName = DNS:reg.zx.org" \
> -x509 -days 365 -out certs/zx.org.crt

[root@local ~]# mkdir /data/certs -p
[root@local ~]# cp /root/certs/ /data/ -r
[root@local certs]# ls /data/certs
zx.org.crt  zx.org.key
# Docker 中信任自签名证书
# 将证书复制到 Docker 的信任目录: Docker 在 /etc/docker/certs.d/ 下的特定目录中查找每个镜像仓库的信任证书。
[root@docker ~ ]# mkdir -p /etc/docker/certs.d/reg.zx.org/
[root@docker ~ ]# cp 
[root@docker ~ ]# cd certs/
[root@docker certs]# cp zx.org.crt /etc/docker/certs.d/reg.zx.org/zx.org.crt
# 将证书添加到信任存储
# 在 RHEL9中,系统使用 update-ca-trust 工具来管理系统信任存储。
# 将自签名证书文件 .crt 复制到 /etc/pki/ca-trust/source/anchors/ 目录中
[root@docker reg.zx.org]# cp ca.crt /etc/pki/ca-trust/source/anchors/
# 更新 CA 证书信任存储
[root@docker reg.zx.org]# update-ca-trust extract
[root@docker reg.zx.org]# vim /etc/rc.d/rc.local     # 开机自启动文件(将“update-ca-trust extract”写入)
# 验证证书是否被信任
[root@docker reg.zx.org]# openssl s_client -connect reg.zx.org:443
……
Verify return code: 0 (ok)
……

三、DNS解析问题

[root@docker certs]# vim /etc/docker/daemon.json 
#添加或修改DNS解析地址
{
  "dns": ["8.8.8.8", "8.8.4.4","114.114.114.114"]
}
[root@docker certs]# systemctl daemon-reload
[root@docker certs]# systemctl restart docker

 

四、解决 

# 解决方案
[root@docker harbor]# systemctl restart docker    # 重启docker
[root@docker harbor]# docker ps -a            # 查看容器是否全部运行
[root@docker harbor]# docker compose up -d    # 若无,开启运行所有容器
[root@docker-harbor ~]# docker login reg.zx.org -uadmin -p123    # 再次登录

​​​​​​​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值