本文主要是介绍配置Insecure Docker Registry支持http请求 (更改默认的https请求),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 小结
- 问题
- 解决
- 参考
小结
本文记录了如何配置Insecure http docker registry
,也就是使用http
请求 (更改默认的https请求)Docker Registry
仓库。
问题
在测试环境中没有配置SSL/TLS
, 需要使用http
请求Docker Registry
,也就是Containerd需要使用http处理请求,但是环境中的Containerd (CRI Container Runtime Interface)
默认是使用https
的,需要对默认的设置进行更改。
解决
对Kubernetes环境进行了以下修改:
1,修改/etc/docker/daemon.json
,添加后结果如下:
{"exec-opts":["native.cgroupdriver=systemd"],"insecure-registries":["http://registry:80"]
}
2, 重启docker服务
systemctl restart docker
3, 修改/etc/containerd/config.toml
,添加以下内容:
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry:80"]
endpoint = ["http://registry:80"]
4, 重启containerd服务
systemctl restart containerd
配置完成,测试结果 :
[root@Master automated_deployment_script]# curl http://registry:80/v2/apiapp/tags/list
{"name":"apiapp","tags":["1.0"]}
[root@Master ~]# curl http://registry:80/v2/_catalog
{"repositories":[]}
参考
Stackoverflow: Docker repository server gave HTTP response to HTTPS client
containerd switching to HTTPS for HTTP registry after failed HEAD request
这篇关于配置Insecure Docker Registry支持http请求 (更改默认的https请求)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!