diff --git a/docker/horizon/extend_start.sh b/docker/horizon/extend_start.sh
index 7a0bf9b55db3b5dc0474a1e4e66461cb23bc6531..a82821f14fae898aac868acf529589792e77ea69 100644
--- a/docker/horizon/extend_start.sh
+++ b/docker/horizon/extend_start.sh
@@ -5,3 +5,10 @@ if [[ "${KOLLA_BASE_DISTRO}" == "ubuntu" || \
     # Loading Apache2 ENV variables
     source /etc/apache2/envvars
 fi
+
+# NOTE(pbourke): httpd will not clean up after itself in some cases which
+# results in the container not being able to restart. Unconfirmed if this
+# happens on Ubuntu. (bug #1489676)
+if [[ "${KOLLA_BASE_DISTRO}" =~ fedora|centos|oraclelinux|rhel ]]; then
+    rm -rf /var/run/httpd/* /run/httpd/* /tmp/httpd*
+fi