我正在尝试使用kubeadm dind,但我在使用私有注册表时遇到了问题。我创建了一个docker私有注册表,运行在http上,但是运行在dind中的kubernetes拒绝使用http,一直尝试使用https下载。
我收到的错误是这个......
无法提取图像“192.168.2.5:5000/inotes-init-db:1.0.18”:rpc 错误:代码 = 未知 desc = 来自守护进程的错误响应: 获取https://192.168.2.5:5000/v2/:http : 服务器给 HTTPS 客户端的 HTTP 响应
但是注册表是在http上运行的...
$ curl -X GET http://192.168.2.5:5000/v2/_catalog 2> /dev/null| jq
{
"repositories": [
"inotes-init-db",
"intelli-notes"
]
}
正如您在上面看到的,它在 http 上运行良好,但如果我尝试使用 https,它会失败......
$ curl -X GET https://192.168.2.5:5000/v2/_catalog
curl: (35) gnutls_handshake() failed: An unexpected TLS packet was received
我还想我也许可以访问 kubernetes 节点来更新他们的/etc/default/docker.json文件,但我不能进入它们。
那么,如何让 kubeadm 使用 http 呢?