From 9738a20a82508eed6554b6360775debb7169b0e0 Mon Sep 17 00:00:00 2001 From: Hector Date: Thu, 7 Sep 2023 21:16:20 +0000 Subject: [PATCH] build: add healthcheck to docker image (!109) * Update docker image to include a healthcheck instruction using a custom script * Replace docker base image with alpine https://gitlab.com/hectorjsmith/fail2ban-prometheus-exporter/-/merge_requests/109 --- Dockerfile | 7 ++++++- health | 8 ++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100755 health diff --git a/Dockerfile b/Dockerfile index 1955792..c3e1f50 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM debian:buster-slim +FROM alpine # Create main app folder to run from WORKDIR /app @@ -6,5 +6,10 @@ WORKDIR /app # Copy compiled binary to release image # (must build the binary before running docker build) COPY fail2ban_exporter /app/fail2ban_exporter +COPY health /app/health + +# Setup a healthcheck +RUN apk add curl +HEALTHCHECK --interval=10s --timeout=4s CMD /app/health ENTRYPOINT ["/app/fail2ban_exporter"] diff --git a/health b/health new file mode 100755 index 0000000..473ab31 --- /dev/null +++ b/health @@ -0,0 +1,8 @@ +#!/bin/sh + +port=9191 +if [ ! -z $F2B_WEB_LISTEN_ADDRESS ]; then + port=`echo $F2B_WEB_LISTEN_ADDRESS | cut -d ":" -f 2 -` +fi + +curl --fail localhost:$port/metrics || exit 1