aboutsummaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authorportdirect <pete@port.direct>2016-12-18 10:58:37 +0000
committerportdirect <pete@port.direct>2016-12-23 12:24:34 +0000
commitd3565b426e5fdf576f2fe8e8cbf1b03533880787 (patch)
treec94350ea56cf508753c85a3b728543f953fbfc27 /docker
parent26fb747b0a6ecf63fcb003836d80799779e6b50e (diff)
downloadkolla-d3565b426e5fdf576f2fe8e8cbf1b03533880787.tar.gz
kolla-d3565b426e5fdf576f2fe8e8cbf1b03533880787.zip
Add Kubernetes Images for Kolla-Kubernetes
These images are intended to be used with standard Kubernetes deployment tooling. They are included with Kolla to allow operators to chose the OS Base image that is used in their environments, and provides Ceph PV support. Implements: blueprint add-kubernetes-images Change-Id: Ifb84a2b9458d071679e1e55679653d702624d702
Diffstat (limited to 'docker')
-rw-r--r--docker/kube/kube-apiserver/Dockerfile.j212
-rw-r--r--docker/kube/kube-base/Dockerfile.j26
-rw-r--r--docker/kube/kube-controller-manager/Dockerfile.j225
-rw-r--r--docker/kube/kube-discovery/Dockerfile.j213
-rw-r--r--docker/kube/kube-proxy/Dockerfile.j212
-rw-r--r--docker/kube/kube-scheduler/Dockerfile.j212
6 files changed, 80 insertions, 0 deletions
diff --git a/docker/kube/kube-apiserver/Dockerfile.j2 b/docker/kube/kube-apiserver/Dockerfile.j2
new file mode 100644
index 000000000..9edd42a5e
--- /dev/null
+++ b/docker/kube/kube-apiserver/Dockerfile.j2
@@ -0,0 +1,12 @@
+FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+ENV KUBERNETES_COMPONENT=kube-apiserver
+
+RUN true \
+ && curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
+ && chmod +x /usr/bin/${KUBERNETES_COMPONENT}
+
+# Clear any customisation by Kolla to entrypoint & command
+ENTRYPOINT []
+CMD []
diff --git a/docker/kube/kube-base/Dockerfile.j2 b/docker/kube/kube-base/Dockerfile.j2
new file mode 100644
index 000000000..db183171b
--- /dev/null
+++ b/docker/kube/kube-base/Dockerfile.j2
@@ -0,0 +1,6 @@
+FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+ENV KUBERNETES_VERSION=v1.5.1
+
+ENV KUBERNETES_DOWNLOAD_ROOT=https://storage.googleapis.com/kubernetes-release/release/${KUBERNETES_VERSION}/bin/linux/amd64
diff --git a/docker/kube/kube-controller-manager/Dockerfile.j2 b/docker/kube/kube-controller-manager/Dockerfile.j2
new file mode 100644
index 000000000..713778c8e
--- /dev/null
+++ b/docker/kube/kube-controller-manager/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+ENV KUBERNETES_COMPONENT=kube-controller-manager
+
+{% import "macros.j2" as macros with context %}
+
+{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set ceph_support_packages = [
+ 'ceph-common'
+ ] %}
+{% elif base_distro in ['ubuntu', 'debian'] %}
+ {% set ceph_support_packages = [
+ 'ceph-common'
+ ] %}
+{% endif %}
+{{ macros.install_packages(ceph_support_packages | customizable("packages")) }}
+
+RUN true \
+ && curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
+ && chmod +x /usr/bin/${KUBERNETES_COMPONENT}
+
+# Clear any customisation by Kolla to entrypoint & command
+ENTRYPOINT []
+CMD []
diff --git a/docker/kube/kube-discovery/Dockerfile.j2 b/docker/kube/kube-discovery/Dockerfile.j2
new file mode 100644
index 000000000..37e5d14dc
--- /dev/null
+++ b/docker/kube/kube-discovery/Dockerfile.j2
@@ -0,0 +1,13 @@
+FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+ENV KUBERNETES_COMPONENT=kube-discovery
+
+# To match upstream we load the binary to /usr/local/bin
+RUN true \
+ && curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/local/bin/${KUBERNETES_COMPONENT} \
+ && chmod +x /usr/local/bin/${KUBERNETES_COMPONENT}
+
+# Clear any customisation by Kolla to entrypoint & command
+ENTRYPOINT []
+CMD []
diff --git a/docker/kube/kube-proxy/Dockerfile.j2 b/docker/kube/kube-proxy/Dockerfile.j2
new file mode 100644
index 000000000..7eafe8fcd
--- /dev/null
+++ b/docker/kube/kube-proxy/Dockerfile.j2
@@ -0,0 +1,12 @@
+FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+ENV KUBERNETES_COMPONENT=kube-proxy
+
+RUN true \
+ && curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
+ && chmod +x /usr/bin/${KUBERNETES_COMPONENT}
+
+# Clear any customisation by Kolla to entrypoint & command
+ENTRYPOINT []
+CMD []
diff --git a/docker/kube/kube-scheduler/Dockerfile.j2 b/docker/kube/kube-scheduler/Dockerfile.j2
new file mode 100644
index 000000000..7009b396f
--- /dev/null
+++ b/docker/kube/kube-scheduler/Dockerfile.j2
@@ -0,0 +1,12 @@
+FROM {{ namespace }}/{{ image_prefix }}kube-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+ENV KUBERNETES_COMPONENT=kube-scheduler
+
+RUN true \
+ && curl -L ${KUBERNETES_DOWNLOAD_ROOT}/${KUBERNETES_COMPONENT} -o /usr/bin/${KUBERNETES_COMPONENT} \
+ && chmod +x /usr/bin/${KUBERNETES_COMPONENT}
+
+# Clear any customisation by Kolla to entrypoint & command
+ENTRYPOINT []
+CMD []