kubeadm dind won't pull from insecure registry on http

3/3/2019

I'm trying to use kubeadm dind, but I'm having trouble with private registries. I created a docker private registry, which is running on http, but kubernetes running in dind refuses to use http, and keeps trying to download using https.

The error I'm receiving is this...

Failed to pull image "192.168.2.5:5000/inotes-init-db:1.0.18": rpc error: code = Unknown desc = Error response from daemon: Get https://192.168.2.5:5000/v2/: http: server gave HTTP response to HTTPS client

But the registry is running on http...

$ curl -X GET http://192.168.2.5:5000/v2/_catalog 2> /dev/null| jq
{
  "repositories": [
    "inotes-init-db",
    "intelli-notes"
  ]
}

As you can see above, it works fine on http, but if I try https, it fails...

$ curl -X GET https://192.168.2.5:5000/v2/_catalog 
curl: (35) gnutls_handshake() failed: An unexpected TLS packet was received

I also thought I could maybe access the kubernetes nodes to update their /etc/default/docker.json file, but I can't shell into them.

So, how do I get kubeadm to use http?

-- Trenton D. Adams
dind
kubernetes

0 Answers