docker 推送到是有仓库失败 (http: server gave HTTP response to HTTPS client)

本贴最后更新于 1938 天前,其中的信息可能已经水流花落

docker 推送到是有仓库失败(http)

本地搭建了一个私有仓库, 但是当推送的时候发现无法推送成功, http: server gave HTTP response to HTTPS client

原因是推送是 https 的, 但是服务器是 http 的导致通信失败


wang@wang-Parallels-Virtual-Platform:~$ docker push 192.168.1.97:5000/nginx

The push refers to repository [192.168.1.97:5000/nginx]

Get https://192.168.1.97:5000/v2/: http: server gave HTTP response to HTTPS client

修改 docker 配置

/etc/docker/ 目录下,创建 daemon.json 文件


sudo vi /etc/docker/daemon.json

将对应的 ip端口 改为自己的


{

"insecure-registries": [

"wang:5000"

]

}

这里的 wang 是我在 host 中改的本地映射

输入命令: sudo vi /etc/hosts

加入后面的内容: 127.0.0.1 wang

重启


sudo systemctl restart docker

image.png

再次尝试推送

注意: 推送需要 images 中有同名的 tag
如果没有的话使用 docker tag 命令重命名一个
操作如下图
再次尝试推送

高级版解决方案

服务器配置成 https
传送门: http://twangt.wang:8080/articles/2019/08/02/1564715676396.html

  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    491 引用 • 917 回帖
  • 容器
    12 引用

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...