我正在尝试使用kubeadm dind,但是在私人注册表方面遇到了麻烦。我创建了一个运行在http上的docker private注册表,但是在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?