FROM alpine:3.19 # zstd for compression, tzdata so cron fires at correct local time RUN apk add --no-cache zstd tzdata curl COPY compress.sh /usr/local/bin/compress.sh RUN chmod +x /usr/local/bin/compress.sh # supercronic runs as any user (unlike alpine crond which requires root) RUN ARCH=$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/') && \ curl -fsSL "https://github.com/aptible/supercronic/releases/latest/download/supercronic-linux-${ARCH}" \ -o /usr/local/bin/supercronic && chmod +x /usr/local/bin/supercronic RUN echo "0 2 * * * /usr/local/bin/compress.sh > /proc/1/fd/1 2>&1" > /etc/crontab CMD ["supercronic", "/etc/crontab"]