Harbor私有镜像仓库使用及报错总结

Harbor私有镜像仓库使用及报错总结

问题描述:我172.10.208.12上pull了一个orchestrator的镜像,想将镜像推送到 Harbor 私有镜像仓库,并在 k8s中使用

第一步 给镜像打标签

首先,你需要将镜像打上 Harbor 仓库的标签,以便 Docker 知道应该推送到哪里。假设你在 172.10.208.12 上拉取的镜像名称为 orchestrator-image,你可以通过以下命令给它打上 Harbor 仓库的标签:

docker tag orchestrator-image registry-gq.harbor.com/orche/orchestrator-image:latest

registry-gq.harbor.com/my-project/orchestrator-image:latest 是目标 Harbor 仓库的完整镜像路径和标签。

my-project 是你在 Harbor 中的项目名称,注意这个项目名称一定是存在的,可以访问的,不存在会提示project orche not found:

第二步 登录到 Harbor 仓库

登录到 Harbor 仓库

docker login registry-gq.harbor.com

第三步 推送镜像到 Harbor并使用

将镜像推送到你在 Harbor 中的项目

docker push registry-gq.harbor.com/orhce/orchestrator-image:latest

Kubernetes 中使用推送的镜像

apiVersion: v1
kind: Pod
metadata:
 name: orchestrator-pod
spec:
 containers:
 - name: orchestrator
   image: registry-gq.harbor.com/my-project/orchestrator-image:latest
   imagePullPolicy: Always

验证部署

kubectl get pods -o wide

问题总结

1.出现Error response from daemon: Get "https://registry-gq.harbor.com/v2/": dial tcp: lookup registry-tgq.harbor.com on 223.5.5.5:53: no such host或者ping: registry-tgq.harbor.com: Name or service not known

分析:该错误提示 Docker 无法解析 registry-tgq.harbor.com 的域名。这通常是由于 DNS 配置问题或主机名没有正确解析为相应的 IP 地址引起的,修改172.16.208.12上的hosts文件

sudo vim /etc/hosts

添加下列内容:

192.168.x.x registry-tgq.harbor.com

2.在登录过程中出现Error response from daemon: Get "https://registry-tgq.harbor.com/v2/": tls: failed to verify certificate: x509: certificate is not valid for any names, but wanted to match registry-tgq.harbor.com

分析: Docker 在尝试连接 registry-gq.harbor.com 时,无法验证 TLS 证书的有效性。

解决一:临时跳过证书验证,添加–insecure参数

解决二:编辑 Docker 配置文件

vim /etc/docker/daemon.json

添加

{
  "insecure-registries": ["registry-gq.harbor.com"]
}

重启生效

systemctl restart docker

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值