Merge pull request #663 from HorayNarea/feat-healthchecks

implement healthchecks - resolves #631
master
Tim Möhlmann 6 years ago committed by GitHub
commit 2124df36ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -4,7 +4,7 @@ RUN mkdir -p /app
WORKDIR /app
COPY requirements-prod.txt requirements.txt
RUN apk add --no-cache openssl \
RUN apk add --no-cache openssl curl \
&& apk add --no-cache --virtual build-dep openssl-dev libffi-dev python-dev build-base \
&& pip install -r requirements.txt \
&& apk del --no-cache build-dep
@ -20,3 +20,5 @@ EXPOSE 80/tcp
VOLUME ["/data"]
CMD ["/start.sh"]
HEALTHCHECK CMD curl -f -L http://localhost/ui || exit 1

@ -13,3 +13,5 @@ EXPOSE 110/tcp 143/tcp 993/tcp 4190/tcp 2525/tcp
VOLUME ["/data", "/mail"]
CMD /start.py
HEALTHCHECK --start-period=350s CMD echo QUIT|nc localhost 110|grep "Dovecot ready."

@ -1,6 +1,6 @@
FROM alpine:3.8
RUN apk add --no-cache certbot nginx nginx-mod-mail openssl \
RUN apk add --no-cache certbot nginx nginx-mod-mail openssl curl \
python py-jinja2 py-requests-toolbelt py-pip \
&& pip install --upgrade pip \
&& pip install idna
@ -12,3 +12,5 @@ EXPOSE 80/tcp 443/tcp 110/tcp 143/tcp 465/tcp 587/tcp 993/tcp 995/tcp 25/tcp 100
VOLUME ["/certs"]
CMD /start.py
HEALTHCHECK CMD curl -k -f -L http://localhost/health || exit 1

@ -150,6 +150,10 @@ http {
proxy_pass_request_body off;
proxy_set_header Content-Length "";
}
location /health {
return 204;
}
}
{% endif %}

@ -12,3 +12,5 @@ EXPOSE 25/tcp 10025/tcp
VOLUME ["/data"]
CMD /start.py
HEALTHCHECK --start-period=350s CMD echo QUIT|nc localhost 25|grep "220 .* ESMTP Postfix"

@ -6,7 +6,7 @@ ARG version=master
ENV VERSION=$version
RUN pip install -r /requirements.txt \
&& apk add --no-cache nginx \
&& apk add --no-cache nginx curl \
&& mkdir /run/nginx
COPY ./nginx.conf /etc/nginx/conf.d/default.conf
@ -15,4 +15,8 @@ COPY . /docs
RUN mkdir -p /build/$VERSION \
&& sphinx-build /docs /build/$VERSION
CMD nginx -g "daemon off;"
EXPOSE 80/tcp
CMD nginx -g "daemon off;"
HEALTHCHECK CMD curl -f -L http://localhost/ || exit 1

@ -4,8 +4,11 @@ RUN apk add --no-cache clamav rsyslog wget clamav-libunrar
COPY conf /etc/clamav
COPY start.sh /start.sh
COPY health.sh /health.sh
EXPOSE 3310/tcp
VOLUME ["/data"]
CMD ["/start.sh"]
HEALTHCHECK CMD /health.sh

@ -0,0 +1,8 @@
#!/bin/sh
if [ "$(echo PING | nc localhost 3310)" = "PONG" ]; then
echo "ping successful"
else
echo "ping failed"
exit 1
fi

@ -1,7 +1,7 @@
FROM alpine:edge
RUN echo "@testing http://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
&& apk add --no-cache radicale@testing py-dulwich@testing
&& apk add --no-cache radicale@testing py-dulwich@testing curl
COPY radicale.conf /radicale.conf
@ -9,3 +9,5 @@ EXPOSE 5232/tcp
VOLUME ["/data"]
CMD radicale -f -S -C /radicale.conf
HEALTHCHECK CMD curl -f -L http://localhost:5232/ || exit 1

@ -1,6 +1,6 @@
FROM alpine:3.8
RUN apk add --no-cache python py-jinja2 rspamd rspamd-controller rspamd-proxy rspamd-fuzzy ca-certificates py-pip \
RUN apk add --no-cache python py-jinja2 rspamd rspamd-controller rspamd-proxy rspamd-fuzzy ca-certificates py-pip curl\
&& pip install --upgrade pip \
&& pip install tenacity
@ -14,3 +14,5 @@ EXPOSE 11332/tcp 11334/tcp 11335/tcp
VOLUME ["/var/lib/rspamd"]
CMD /start.py
HEALTHCHECK --start-period=350s CMD curl -f -L http://localhost:11334/ || exit 1

@ -4,7 +4,7 @@ RUN mkdir -p /app
WORKDIR /app
COPY requirements.txt requirements.txt
RUN apk add --no-cache git \
RUN apk add --no-cache git curl \
&& pip install -r requirements.txt
COPY server.py ./server.py
@ -18,3 +18,5 @@ COPY templates /data/master/templates
EXPOSE 80/tcp
CMD gunicorn -w 4 -b :80 --access-logfile - --error-logfile - --preload main:app
HEALTHCHECK CMD curl -f -L http://localhost/ || exit 1

@ -3,7 +3,7 @@ FROM php:7.2-apache
ENV RAINLOOP_URL https://github.com/RainLoop/rainloop-webmail/releases/download/v1.12.1/rainloop-community-1.12.1.zip
RUN apt-get update && apt-get install -y \
unzip python3 python3-jinja2 \
unzip python3 python3-jinja2 curl \
&& rm -rf /var/www/html/ \
&& mkdir /var/www/html \
&& cd /var/www/html \
@ -29,3 +29,5 @@ EXPOSE 80/tcp
VOLUME ["/data"]
CMD /start.py
HEALTHCHECK CMD curl -f -L http://localhost/ || exit 1

@ -3,7 +3,7 @@ FROM php:7.2-apache
ENV ROUNDCUBE_URL https://github.com/roundcube/roundcubemail/releases/download/1.3.7/roundcubemail-1.3.7-complete.tar.gz
RUN apt-get update && apt-get install -y \
zlib1g-dev \
zlib1g-dev curl \
&& docker-php-ext-install zip \
&& echo date.timezone=UTC > /usr/local/etc/php/conf.d/timezone.ini \
&& rm -rf /var/www/html/ \
@ -28,3 +28,5 @@ EXPOSE 80/tcp
VOLUME ["/data"]
CMD ["/start.sh"]
HEALTHCHECK CMD curl -f -L http://localhost/ || exit 1

Loading…
Cancel
Save