From 525e40339bac8950d5a2a2dbc3ac9a524aa8a9eb Mon Sep 17 00:00:00 2001 From: Daniel Richter Date: Sun, 7 Jul 2024 23:54:34 +0200 Subject: [PATCH] feat: add supercronic to allow running background jobs --- Dockerfile | 5 +++++ docker/docker-entrypoint.sh | 5 +++++ docker/supervisord.conf | 10 ++++++++++ 3 files changed, 20 insertions(+) diff --git a/Dockerfile b/Dockerfile index a0120cdd4..9c492d521 100644 --- a/Dockerfile +++ b/Dockerfile @@ -286,6 +286,11 @@ VOLUME ["/usr/src/paperless/data", \ "/usr/src/paperless/consume", \ "/usr/src/paperless/export"] +ENV SUPERCRONIC=supercronic-linux-amd64 +ENV VERSION=0.2.30 +RUN curl -fsSL -o "/usr/local/bin/supercronic" "https://github.com/aptible/supercronic/releases/download/v$VERSION/$SUPERCRONIC" +RUN chmod a+x "/usr/local/bin/supercronic" + ENTRYPOINT ["/sbin/docker-entrypoint.sh"] EXPOSE 8000 diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh index 017e37384..05eb1b378 100755 --- a/docker/docker-entrypoint.sh +++ b/docker/docker-entrypoint.sh @@ -157,6 +157,11 @@ if [[ -n "$PAPERLESS_OCR_LANGUAGES" ]]; then install_languages "$PAPERLESS_OCR_LANGUAGES" fi +touch /etc/cron.d/export.cron +if [[ -n "$PAPERLESS_EXPORT_CRON" ]]; then + echo "$PAPERLESS_EXPORT_CRON document_exporter /usr/src/paperless/export" > /etc/cron.d/export.cron +fi + initialize if [[ "$1" != "/"* ]]; then diff --git a/docker/supervisord.conf b/docker/supervisord.conf index 009760771..e545f2c87 100644 --- a/docker/supervisord.conf +++ b/docker/supervisord.conf @@ -17,6 +17,16 @@ stderr_logfile=/dev/stderr stderr_logfile_maxbytes=0 environment = HOME="/usr/src/paperless",USER="paperless" +[program:export] +command=/usr/local/bin/supercronic /etc/cron.d/export.cron +user=paperless +startsecs=0 +priority=2 +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 + [program:consumer] command=python3 manage.py document_consumer user=paperless