Dockerfile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. # with `FROM docker.io/alpine:3.16.1`:
  2. # > $ apk add --no-cache \
  3. # > --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \
  4. # > dma=0.13-r3
  5. # > [...]
  6. # > ERROR: unable to select packages:
  7. # > so:libcrypto.so.3 (no such package):
  8. # > required by: dma-0.13-r3[so:libcrypto.so.3]
  9. # > so:libssl.so.3 (no such package):
  10. # > required by: dma-0.13-r3[so:libssl.so.3]
  11. FROM docker.io/alpine:20220715
  12. ARG DUMB_INIT_PACKAGE_VERSION=1.2.5-r1
  13. ARG NETCAT_PACKAGE_VERSION=1.130-r3
  14. ARG DMA_REPOSITORY=http://dl-cdn.alpinelinux.org/alpine/edge/testing
  15. ARG DMA_PACKAGE_VERSION=0.13-r3
  16. RUN apk add --no-cache \
  17. dumb-init=${DUMB_INIT_PACKAGE_VERSION} \
  18. netcat-openbsd=${NETCAT_PACKAGE_VERSION} \
  19. && apk add --repository=${DMA_REPOSITORY} --no-cache \
  20. dma=${DMA_PACKAGE_VERSION} \
  21. && adduser -S -G mail report
  22. VOLUME /var/spool/dma
  23. ENV TOR_HOST= \
  24. TOR_PORT=9050 \
  25. ONION_SERVICE_HOST= \
  26. ONION_SERVICE_PORT= \
  27. TIMEOUT_SECONDS=4 \
  28. SLEEP_DURATION=16s \
  29. RETRIES=0 \
  30. MAIL_TO= \
  31. VERBOSE=
  32. COPY --chown=report:nobody monitor.sh /
  33. USER report
  34. ENTRYPOINT ["dumb-init", "--"]
  35. CMD ["/monitor.sh"]
  36. HEALTHCHECK CMD nc -z "$TOR_HOST" "$TOR_PORT" || exit 1
  37. # https://github.com/opencontainers/image-spec/blob/v1.0.1/annotations.md
  38. ARG REVISION=
  39. LABEL org.opencontainers.image.title="report online status of tor onion services via email" \
  40. org.opencontainers.image.source="https://github.com/fphammerle/onion-service-status-mail" \
  41. org.opencontainers.image.revision="$REVISION"