diff --git a/docker/kuryr/Dockerfile.j2 b/docker/kuryr/Dockerfile.j2
new file mode 100644
index 0000000000000000000000000000000000000000..d0e094771d1d1ee7ba609f29e62dd0bcabb3da98
--- /dev/null
+++ b/docker/kuryr/Dockerfile.j2
@@ -0,0 +1,19 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+    && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD kuryr-archive /kuryr-source
+RUN ln -s kuryr-source/* kuryr \
+    && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /kuryr
+
+{% endif %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+{{ include_footer }}
diff --git a/docker/kuryr/extend_start.sh b/docker/kuryr/extend_start.sh
new file mode 100644
index 0000000000000000000000000000000000000000..ee7045d04d14570201b101bc5136adc1014dcd75
--- /dev/null
+++ b/docker/kuryr/extend_start.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
+    mkdir -p /usr/lib/docker/plugins/kuryr
+    exit 0
+fi
diff --git a/kolla/common/config.py b/kolla/common/config.py
index b1f2fdea16dea4e79bc3468b7ab85623ffd42fe1..ee10bcce021209c373ee3e240dc7eb32f6120564 100644
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -204,6 +204,10 @@ SOURCES = {
         'type': 'url',
         'location': ('http://tarballs.openstack.org/keystone/'
                      'keystone-master.tar.gz')},
+    'kuryr': {
+        'type': 'url',
+        'location': ('http://tarballs.openstack.org/kuryr/'
+                     'kuryr-master.tar.gz')},
     'magnum-base': {
         'type': 'url',
         'location': ('http://tarballs.openstack.org/magnum/'
@@ -264,7 +268,6 @@ SOURCES = {
         'type': 'url',
         'location': ('http://tarballs.openstack.org/zaqar/'
                      'zaqar-master.tar.gz')}
-
 }
 
 
diff --git a/tests/test_build.py b/tests/test_build.py
index 373fdcbfb9a2d3cbfb858407e76fe93d863b6dbd..e5832aaac1a0e4d185cd3aac9f964df42de3d682 100644
--- a/tests/test_build.py
+++ b/tests/test_build.py
@@ -67,7 +67,7 @@ class BuildTest(object):
 
 
 class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
-    excluded_images = []
+    excluded_images = ["kuryr"]
 
     def setUp(self):
         super(BuildTestCentosBinary, self).setUp()
@@ -104,7 +104,7 @@ class BuildTestUbuntuSource(BuildTest, base.BaseTestCase):
 
 
 class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
-    excluded_images = []
+    excluded_images = ["kuryr"]
 
     def setUp(self):
         super(BuildTestOracleLinuxBinary, self).setUp()