I'm trying to create a local Kubernetes deployment using Minikube, Docker Registry, and a demo node project.
The first thing I did was install Docker v1.12.3, then Minikube v0.12.2.
Then I created a Docker Registry container by running this command (via this tutorial, only running the first command below)
docker run -d -p 5000:5000 --name registry registry:2
Next I ran this minikube command to create a local kubernetes cluster:
minikube start --vm-driver="virtualbox" --insecure-registry="0.0.0.0:5000"
My project structure looks like this:
.
├── Dockerfile
└── server.js
and my Dockerfile looks like this:
FROM node:7.1.0
EXPOSE 8080
COPY server.js .
CMD node server.js
Then I built my own docker image and pushed it to my private repository:
docker build -t hello-node .
docker tag hello-node localhost:5000/hello-node
docker push localhost:5000/hello-node
Then I tried to run a deployment with this command:
kubectl run hello-node --image=localhost:5000/hello-node --port=8888
But then I get this:
sudo kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default hello-node-3745105022-gzs5a 0/1 ErrImagePull 0 11m
kube-system kube-addon-manager-minikube 1/1 Running 4 10d
kube-system kube-dns-v20-2x64k 3/3 Running 12 10d
kube-system kubernetes-dashboard-mjpjv 1/1 Running 4 10d
I think I might be missing some kind of docker registry authentication, but as I'm googling I can't find something that I understand. Could someone please point me in the right direction?
Edit
After using ssh to access bash
on the kubernetes VM and pull the hello-node
image from my private registry by using this command:
minikube ssh
Boot2Docker version 1.11.1, build master : 901340f - Fri Jul 1
22:52:19 UTC 2016
Docker version 1.11.1, build 5604cbe
docker@minikube:~$ sudo docker pull localhost:5000/hello-node
Using default tag: latest
Pulling repository localhost:5000/hello-node
Error while pulling image: Get http://localhost:5000/v1/repositories/hello-node/images: dial tcp 127.0.0.1:5000: getsockopt: connection refused
Is localhost:5000
the correct address to use within the kubernetes host VM?