summaryrefslogtreecommitdiff
path: root/docker/octavia
diff options
context:
space:
mode:
authorJeffrey Zhang <zhang.lei.fly@gmail.com>2016-11-20 09:11:44 +0800
committerJeffrey Zhang <jeffrey.zhang@99cloud.net>2016-11-22 03:39:03 +0000
commit2d8be6bee4750754cdf482cde44627c000961895 (patch)
tree934b62f7d737e8d23d7060ddaac5f7ff93a56659 /docker/octavia
parent93f934c1d6766f811930d173fa3d33f208d03057 (diff)
downloadkolla-2d8be6bee4750754cdf482cde44627c000961895.tar.gz
kolla-2d8be6bee4750754cdf482cde44627c000961895.zip
Add octavia docker image
Change-Id: I6dc827cc1bbea9d580e1dcdb1396f7f9848530ca Implements: blueprint lbaas-octavia-driver
Diffstat (limited to 'docker/octavia')
-rw-r--r--docker/octavia/octavia-api/Dockerfile.j225
-rw-r--r--docker/octavia/octavia-base/Dockerfile.j230
-rw-r--r--docker/octavia/octavia-health-manager/Dockerfile.j225
-rw-r--r--docker/octavia/octavia-housekeeping/Dockerfile.j225
-rw-r--r--docker/octavia/octavia-worker/Dockerfile.j225
5 files changed, 130 insertions, 0 deletions
diff --git a/docker/octavia/octavia-api/Dockerfile.j2 b/docker/octavia/octavia-api/Dockerfile.j2
new file mode 100644
index 000000000..053d355a6
--- /dev/null
+++ b/docker/octavia/octavia-api/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_api_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_api_packages = [
+ 'openstack-octavia-api'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_api_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/docker/octavia/octavia-base/Dockerfile.j2 b/docker/octavia/octavia-base/Dockerfile.j2
new file mode 100644
index 000000000..2287b859c
--- /dev/null
+++ b/docker/octavia/octavia-base/Dockerfile.j2
@@ -0,0 +1,30 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_base_packages = [
+ 'openstack-octavia-common'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_base_packages | customizable("packages")) }}
+
+{% elif install_type == 'source' %}
+ADD octavia-base-archive /octavia-base-source
+RUN ln -s /octavia-base-source/* octavia \
+ && useradd --user-group --create-home --home-dir /var/lib/octavia octavia \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /octavia \
+ && mkdir -p /etc/octavia \
+ && cp -r /octavia/etc/* /etc/octavia/ \
+ && chown -R octavia: /etc/octavia
+{% endif %}
+
+{% block octavia_base_footer %}{% endblock %}
diff --git a/docker/octavia/octavia-health-manager/Dockerfile.j2 b/docker/octavia/octavia-health-manager/Dockerfile.j2
new file mode 100644
index 000000000..853cfb355
--- /dev/null
+++ b/docker/octavia/octavia-health-manager/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_health_manager_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_health_manager_packages = [
+ 'openstack-octavia-health-manager'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_health_manager_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_health_manager_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/docker/octavia/octavia-housekeeping/Dockerfile.j2 b/docker/octavia/octavia-housekeeping/Dockerfile.j2
new file mode 100644
index 000000000..bc70fb175
--- /dev/null
+++ b/docker/octavia/octavia-housekeeping/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_housekeeping_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_housekeeping_packages = [
+ 'openstack-octavia-housekeeping'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_housekeeping_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_housekeeping_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/docker/octavia/octavia-worker/Dockerfile.j2 b/docker/octavia/octavia-worker/Dockerfile.j2
new file mode 100644
index 000000000..8c64f6161
--- /dev/null
+++ b/docker/octavia/octavia-worker/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_worker_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_worker_packages = [
+ 'openstack-octavia-worker'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_worker_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_worker_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia