aboutsummaryrefslogtreecommitdiff
path: root/straper/db/public/services/custom-units/paperless.service
diff options
context:
space:
mode:
Diffstat (limited to 'straper/db/public/services/custom-units/paperless.service')
-rw-r--r--straper/db/public/services/custom-units/paperless.service28
1 files changed, 28 insertions, 0 deletions
diff --git a/straper/db/public/services/custom-units/paperless.service b/straper/db/public/services/custom-units/paperless.service
new file mode 100644
index 0000000..c95bc63
--- /dev/null
+++ b/straper/db/public/services/custom-units/paperless.service
@@ -0,0 +1,28 @@
+[Unit]
+Description=Paperless-ngx
+Requires=docker.service
+Wants=network-online.target
+After=docker.service network-online.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+WorkingDirectory=/srv/paperless
+
+# Wait until Docker actually answers
+ExecStartPre=/usr/bin/docker info
+
+# Retry startup in case of transient dbus / cgroup failure
+ExecStart=/bin/sh -c 'for i in 1 2 3 4 5; do /usr/bin/docker compose up -d && exit 0; sleep 10; done; exit 1'
+
+ExecStop=/usr/bin/docker compose down
+
+Restart=on-failure
+RestartSec=10
+StartLimitIntervalSec=0
+
+TimeoutStartSec=0
+
+[Install]
+WantedBy=multi-user.target
+