配置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,添加后结果如下:

json 复制代码
{
   "exec-opts":[
      "native.cgroupdriver=systemd"
   ],
   "insecure-registries":[
      "http://registry:80"
   ]
}

2, 重启docker服务

shell 复制代码
systemctl restart docker

3, 修改/etc/containerd/config.toml,添加以下内容:

shell 复制代码
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry:80"]
endpoint = ["http://registry:80"]

4, 重启containerd服务

shell 复制代码
systemctl restart containerd

配置完成,测试结果 :

shell 复制代码
[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

相关推荐
JadenOliver36 分钟前
Docker 守护进程核心配置入口:daemon.json
docker·daemon.json
原神启动11 小时前
K8S(九)—— Kubernetes 集群调度全面解析
云原生·容器·kubernetes
用户93816912553601 小时前
Ubuntu系统docker错误,failed to do request: Head "https://registry-1.docker.io/v2/...
docker
m0_748245922 小时前
Docker 容器基本操作
运维·docker·容器
咋吃都不胖lyh2 小时前
Docker 是什么?全面解析容器化技术
运维·docker·容器
阿杰 AJie3 小时前
Docker 常用镜像启动参数对照表
运维·docker·容器
db_cy_20624 小时前
Docker+Kubernetes企业级容器化部署解决方案(阶段一)
docker·容器·kubernetes·云计算·负载均衡·运维开发
王同学 学出来4 小时前
vue+nodejs项目在服务器实现docker部署
服务器·前端·vue.js·docker·node.js
Voyager_44 小时前
OS八股:HTTP 与 WebSocket 的通信模型差异 —— 理解等待、轮询、阻塞与全双工
websocket·网络协议·http
last demo4 小时前
docker容器
运维·docker·容器