docker操作时使用https时报错问题解决

在Ubuntu20上初次安装Docker后,尝试拉取公司内部HTTPS私有仓库镜像时遇到错误。问题在于需要已知的CA证书或启用不安全的注册表。解决方案包括在daemon.json中添加‘insecure-registries’配置或放置CA证书。具体步骤包括编辑daemon.json文件,添加配置,然后重启Docker服务。

在初次安装完docker后(本人系统Ubuntu20),未进行任何单独的配置,在对官方的docker进行拉取时没有问题,但是在拉取公司内部仓库镜像时,出现了以下问题:

Error response from daemon: invalid registry endpoint https://yourOwnIp:5000/v1/: Get https://yourOwnIp:5000/v1/_ping: http: server gave HTTP response to HTTPS client. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry yourOwnIp:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/yourOwnIp:5000/ca.crt

大致意思就是镜像注册仓库使用了https,需要已知的ca证书,如果我们的这个注册位置需要支持未知的ca证书,name需要在daemon的参数中增加“--insecure-registry yourOwnIp:5000”。当然,如果你有正经的ca证书,那么将证书放在“/etc/docker/certs.d/yourOwnIp:5000/ca.crt”即可。

所以,意思很明显了,两个办法,有ca证书的情况就不说了,下面说下如何添加未知注册表的配置

  1. sudo vim /etc/docker/daemon.json
  2. 添加/修改内容
    {
      "insecure-registries": ["yourIp:5000"]
    }

     

  3. 执行重启docker服务命令:sudo  systemctl restart docker

  4. 完成,再进行操作试试!

    参考资料:https://docs.docker.com/registry/insecure/

     

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值