From 5ca1409a6cefa9800975ac22a6f7d4e3caedbff7 Mon Sep 17 00:00:00 2001 From: Steve Krulewitz Date: Sun, 12 Jan 2025 03:22:03 +0000 Subject: [PATCH] add healthcheck --- Dockerfile | 9 ++++++++- healthcheck.sh | 13 +++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100755 healthcheck.sh diff --git a/Dockerfile b/Dockerfile index 490a682..f860ec3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,12 +22,19 @@ RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} GOARM=${GOARM} make buil #RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} GOARM=${GOARM} go build -ldflags="-w -s" -o /go/bin/teslaBleHttpProxy main.go RUN mkdir -p /go/bin/key -FROM scratch +#FROM scratch +FROM alpine:3.21 + # Timezone data COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo ENV TZ=Europe/Berlin #WORKDIR /app/ COPY --from=builder /go/bin/teslaBleHttpProxy /teslaBleHttpProxy COPY --from=builder /go/bin/key /key +COPY healthcheck.sh /healthcheck.sh +RUN chmod +x /healthcheck.sh EXPOSE 8080 + +HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 CMD /healthcheck.sh + ENTRYPOINT ["/teslaBleHttpProxy"] diff --git a/healthcheck.sh b/healthcheck.sh new file mode 100755 index 0000000..122d53e --- /dev/null +++ b/healthcheck.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +THRESHOLD_BYTES=100000000 + +MEMORY_USAGE_BYTES=$(cat /sys/fs/cgroup/memory.current) + +if [ $MEMORY_USAGE_BYTES -gt $THRESHOLD_BYTES ]; then + echo "Memory usage ($MEMORY_USAGE_BYTES) exceeds threshold ($THRESHOLD_BYTES)" + exit 1 +else + echo "Memory usage OK: $MEMORY_USAGE_BYTES" + exit 0 +fi \ No newline at end of file