Skip to content

Instantly share code, notes, and snippets.

@kelseyhightower
Created July 1, 2015 18:06
Show Gist options
  • Save kelseyhightower/ebf8aae321fda80cc7c3 to your computer and use it in GitHub Desktop.
Save kelseyhightower/ebf8aae321fda80cc7c3 to your computer and use it in GitHub Desktop.

Single Node Kubernetes Cluster

sudo docker run -d --net=host --privileged --name=kubestack \
-v /sys:/sys:ro \
-v /:/rootfs:ro \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/run:/var/run:rw \
-v /var/lib/kubelet/:/var/lib/kubelet:rw \
-v /var/lib/docker/:/var/lib/docker:ro \
kelseyhightower/kubestack:0.20.2

Wait about 10s

docker run -t -i --net=host kelseyhightower/kubeos:0.20.2 /bin/bash
# kubectl get pods
NAME                   READY     REASON    RESTARTS   AGE
kubernetes-127.0.0.1   5/5       Running   0          11s
# kubectl get cs  
NAME                 STATUS    MESSAGE              ERROR
controller-manager   Healthy   ok                   nil
scheduler            Healthy   ok                   nil
etcd-0               Healthy   {"health": "true"}   nil
@kelseyhightower
Copy link
Author

The Dockerfile for KubeOS

FROM google/debian:wheezy

RUN apt-get update
RUN apt-get -yy -q install iptables ca-certificates

COPY etcd /usr/local/bin/etcd
COPY etcdctl /usr/local/bin/etcdctl
COPY kubectl /usr/local/bin/kubectl
COPY kubelet /usr/local/bin/kubelet
COPY kube-apiserver /usr/local/bin/kube-apiserver
COPY kube-controller-manager /usr/local/bin/kube-controller-manager
COPY kube-proxy /usr/local/bin/kube-proxy
COPY kube-scheduler /usr/local/bin/kube-scheduler
COPY nsenter /nsenter

RUN chmod 755 /nsenter
RUN chmod 755 /usr/local/bin/kube*
RUN chmod 755 /usr/local/bin/etcd*

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment