From b656fedca66c0f726bd2903e8c060491a0ff7f61 Mon Sep 17 00:00:00 2001 From: andryyy Date: Fri, 3 Mar 2017 22:26:50 +0100 Subject: [PATCH] Rspamd: Wait for maps and settings --- data/Dockerfiles/rspamd/Dockerfile | 8 +++++--- data/Dockerfiles/rspamd/docker-entrypoint.sh | 10 ++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 data/Dockerfiles/rspamd/docker-entrypoint.sh diff --git a/data/Dockerfiles/rspamd/Dockerfile b/data/Dockerfiles/rspamd/Dockerfile index 920a7a02..45b84fe9 100644 --- a/data/Dockerfiles/rspamd/Dockerfile +++ b/data/Dockerfiles/rspamd/Dockerfile @@ -12,18 +12,20 @@ RUN dpkg-divert --local --rename --add /sbin/initctl \ RUN apt-key adv --fetch-keys http://rspamd.com/apt-stable/gpg.key \ && echo "deb http://rspamd.com/apt-stable/ xenial main" > /etc/apt/sources.list.d/rspamd.list \ && apt-get update \ - && apt-get -y install rspamd ca-certificates python-pip coreutils + && apt-get -y install rspamd ca-certificates python-pip coreutils curl RUN echo '.include $LOCAL_CONFDIR/local.d/rspamd.conf.local' > /etc/rspamd/rspamd.conf.local ADD settings.conf /etc/rspamd/modules.d/settings.conf ADD antivirus.conf /etc/rspamd/modules.d/antivirus.conf +ADD docker-entrypoint.sh /usr/local/bin RUN pip install -U oletools - RUN timeout 30 /usr/bin/rspamd -f -u _rspamd -g _rspamd; exit 0 -CMD ["/usr/bin/rspamd","-f", "-u", "_rspamd", "-g", "_rspamd"] +ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"] + +CMD ["/usr/bin/rspamd", "-f", "-u", "_rspamd", "-g", "_rspamd"] RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* diff --git a/data/Dockerfiles/rspamd/docker-entrypoint.sh b/data/Dockerfiles/rspamd/docker-entrypoint.sh new file mode 100644 index 00000000..a5711074 --- /dev/null +++ b/data/Dockerfiles/rspamd/docker-entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -e +while true; do + SC=$(curl -s -o /dev/null -w "%{http_code}" http://nginx:8081/settings.php) + if [[ ${SC} == "200" ]]; then + sleep 3 + exec "$@" + fi + sleep 3 +done