From 8f5f3059debd75dd06a2e923e9156d61c3804103 Mon Sep 17 00:00:00 2001 From: Pavol Mederly Date: Tue, 25 Sep 2018 17:18:29 +0200 Subject: [PATCH] Add Docker health check Note: it does not work with Shibboleth authentication yet. --- midpoint/midpoint-server/Dockerfile | 5 ++++- .../container_files/usr-local-bin/healthcheck.sh | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100755 midpoint/midpoint-server/container_files/usr-local-bin/healthcheck.sh diff --git a/midpoint/midpoint-server/Dockerfile b/midpoint/midpoint-server/Dockerfile index e1be60b..090c4f6 100644 --- a/midpoint/midpoint-server/Dockerfile +++ b/midpoint/midpoint-server/Dockerfile @@ -31,7 +31,8 @@ RUN chmod 755 /opt/tier/setenv.sh \ && chmod 755 /usr/local/bin/setup-cron.sh \ && chmod 755 /usr/local/bin/start-midpoint.sh \ && chmod 755 /usr/local/bin/start-httpd.sh \ - && chmod 755 /usr/local/bin/startup.sh + && chmod 755 /usr/local/bin/startup.sh \ + && chmod 755 /usr/local/bin/healthcheck.sh RUN cp /dev/null /etc/httpd/conf.d/ssl.conf \ && sed -i 's/LogFormat "/LogFormat "httpd;access_log;%{ENV}e;%{USERTOKEN}e;/g' /etc/httpd/conf/httpd.conf \ @@ -105,4 +106,6 @@ RUN rm /etc/localtime \ RUN /opt/tier/setenv.sh +HEALTHCHECK --interval=1m --timeout=30s --start-period=2m CMD /usr/local/bin/healthcheck.sh + CMD ["/usr/local/bin/startup.sh"] diff --git a/midpoint/midpoint-server/container_files/usr-local-bin/healthcheck.sh b/midpoint/midpoint-server/container_files/usr-local-bin/healthcheck.sh new file mode 100755 index 0000000..e25c16f --- /dev/null +++ b/midpoint/midpoint-server/container_files/usr-local-bin/healthcheck.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +(set -o pipefail ; curl -k -f http://localhost:443/midpoint/actuator/health | tr -d '[:space:]' | grep -q "\"status\":\"UP\"") || exit 1