diff --git a/docker/chrony/Dockerfile.j2 b/docker/chrony/Dockerfile.j2
new file mode 100644
index 0000000000000000000000000000000000000000..8443bcc4e8fed474ecba3e63925b3cf4c65e86c0
--- /dev/null
+++ b/docker/chrony/Dockerfile.j2
@@ -0,0 +1,23 @@
+FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block chrony_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set chrony_packages = ['chrony'] %}
+
+{% if base_distro in ['ubuntu', 'debian'] %}
+# Ubuntu use _chrony username to use unified running user with RHEL system
+RUN useradd --user-group --create-home --home-dir /var/lib/chrony chrony
+{% endif %}
+
+{{ macros.install_packages(chrony_packages | customizable("packages")) }}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+RUN chmod 755 /usr/local/bin/kolla_extend_start \
+    && usermod -a -G kolla chrony
+
+{% block chrony_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+{{ include_footer }}
diff --git a/docker/chrony/extend_start.sh b/docker/chrony/extend_start.sh
new file mode 100644
index 0000000000000000000000000000000000000000..80af48dba9bf79d97c44da66f16b16aceb84383a
--- /dev/null
+++ b/docker/chrony/extend_start.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+rm -f /var/run/chronyd.pid
+
+if [[ ! -d "/var/log/kolla/chrony" ]]; then
+    mkdir -p /var/log/kolla/chrony
+fi
+if [[ $(stat -c %a /var/log/kolla/chrony) != "755" ]]; then
+    chmod 755 /var/log/kolla/chrony
+fi
diff --git a/kolla/common/config.py b/kolla/common/config.py
index 5c00f68375896270b0d9528b2838a780b19e4443..2a990f5123e6fad28fbd50e8c349e5c197a9245a 100644
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -52,15 +52,15 @@ _PROFILE_OPTS = [
                          'zaqar'],
                 help='Aux Images'),
     cfg.ListOpt('default',
-                default=['cron', 'kolla-toolbox', 'glance', 'haproxy',
-                         'heat', 'horizon', 'keepalived', 'keystone',
-                         'memcached', 'mariadb', 'neutron', 'nova',
+                default=['chrony', 'cron', 'kolla-toolbox', 'glance',
+                         'haproxy', 'heat', 'horizon', 'keepalived',
+                         'keystone', 'memcached', 'mariadb', 'neutron', 'nova',
                          'openvswitch', 'rabbitmq', 'heka'],
                 help='Default images'),
     cfg.ListOpt('gate',
-                default=['cron', 'glance', 'haproxy', 'keepalived', 'keystone',
-                         'kolla-toolbox', 'mariadb', 'memcached', 'neutron',
-                         'nova', 'openvswitch', 'rabbitmq', 'heka'],
+                default=['chrony', 'cron', 'glance', 'haproxy', 'keepalived',
+                         'keystone', 'kolla-toolbox', 'mariadb', 'memcached',
+                         'neutron', 'nova', 'openvswitch', 'rabbitmq', 'heka'],
                 help='Gate images')
 ]