mirror of
https://github.com/unpoller/unpoller.git
synced 2026-03-31 06:33:57 -04:00
Implements #406 by adding a --health CLI flag and HEALTHCHECK instruction to the Dockerfile. This allows Docker and container orchestration platforms to monitor container health automatically. Changes: - Added --health flag that validates configuration and plugin connectivity - Implemented HealthCheck() method in pkg/poller/commands.go - Updated Dockerfile with HEALTHCHECK instruction (30s interval, 10s timeout) - Updated MANUAL.md with --health flag documentation - Added health check documentation to Docker README - Added comments to docker-compose examples about built-in health check The health check: - Validates configuration file is found and parseable - Ensures at least one input and one enabled output are configured - Performs basic validation on enabled outputs - Returns exit code 0 (healthy) or 1 (unhealthy) - Runs silently for Docker compatibility 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
19 lines
629 B
Docker
19 lines
629 B
Docker
FROM busybox:latest as builder
|
|
# we have to do this hop because distroless is bare without common shell commands
|
|
|
|
RUN mkdir -p /etc/unpoller
|
|
# copy over example config for cnfg environment-based default config
|
|
COPY examples/up.conf.example /etc/unpoller/up.conf
|
|
COPY unpoller_manual.html /etc/unpoller/manual.html
|
|
COPY README.html /etc/unpoller/readme.html
|
|
|
|
FROM gcr.io/distroless/static-debian11
|
|
|
|
COPY unpoller /usr/bin/unpoller
|
|
COPY --from=builder /etc/unpoller /etc/unpoller
|
|
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=30s --retries=3 \
|
|
CMD ["/usr/bin/unpoller", "--health"]
|
|
|
|
ENTRYPOINT [ "/usr/bin/unpoller" ]
|