docker搭建私有仓库遇到的坑 http: server gave HTTP response to HTTPS client

搭建docker私有仓库遇到的问题汇总

1、本地ping不通阿里云公网ip

解决办法

在阿里云安全组里添加规则:协议类型要选择 全部

2、私有仓库搭建好后本地push镜像报错

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

出现这问题的原因是:Docker自从1.3.X之后docker registry交互默认使用的是HTTPS,但是搭建私有镜像默认使用的是HTTP服务,所以与私有镜像交时出现以上错误

解决办法

解决办法是:在docker server启动的时候,增加启动参数,默认使用HTTP访问:

vim /usr/lib/systemd/system/docker.service

ExecStart= 后面添加 --insecure-registry ip:5000
另外还需要加:EnvironmentFile=-/etc/docker/daemon.json
如下图:

另外还需要编辑/etc/docker/daemon.json 添加如下内容:

{

"insecure-registries":["xxxxip:5000"]

}

3、docker镜像加速器配置

解决办法

解决办法编辑 /etc/docker/daemon.json

sudo vim /etc/docker/daemon.json

添加如下内容:

{

"registry-mirrors": ["http://hub-mirror.c.163.com", "https://registry.docker-cn.com"],
"insecure-registries":["xxxxip:5000"]

}

4、重新启动docker配置和服务

解决办法

以上的配置全部添加完毕之后需要重新加载配置和启动docker

[vagrant@bogon ~]$ sudo systemctl daemon-reload
[vagrant@bogon ~]$ sudo systemctl restart docker

这个时候就可以推送本地镜像到我们部署的私有仓库了

5、验证远程私有仓库中已经有了我们推送镜像

在浏览器中打开如下
http://xxxxip:5000/v2/_catalog

出现如下的图说明已经推送成功
image

posted @ 2021-07-10 00:31  热爱技术的小牛  阅读(7349)  评论(0编辑  收藏  举报
热爱技术的小牛