Some checks failed
Deployment Verification / deploy-and-test (push) Failing after 5m41s
140 lines
3.9 KiB
YAML
140 lines
3.9 KiB
YAML
#### NETWORKS
|
|
networks:
|
|
traefik_front_network:
|
|
external: true
|
|
back_network_paperless:
|
|
driver: bridge
|
|
attachable: true
|
|
|
|
#### SERVICES
|
|
services:
|
|
###
|
|
broker:
|
|
container_name: paperless-broker
|
|
hostname: paperless-broker
|
|
image: docker.io/library/redis:7
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./redisdata:/data
|
|
networks:
|
|
- back_network_paperless
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
|
|
### postgres
|
|
db:
|
|
container_name: paperless-postgres
|
|
hostname: paperless-postgres
|
|
image: docker.io/library/postgres:16
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./pgdata:/var/lib/postgresql/data
|
|
networks:
|
|
- back_network_paperless
|
|
environment:
|
|
PGDATA: /var/lib/postgresql/data/paperless
|
|
POSTGRES_DB: paperless
|
|
POSTGRES_USER: paperless
|
|
POSTGRES_PASSWORD: paperless
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
|
|
### paperless-ngx
|
|
webserver:
|
|
container_name: paperless-app
|
|
hostname: paperless-app
|
|
image: ghcr.io/paperless-ngx/paperless-ngx:latest
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
- broker
|
|
- gotenberg
|
|
- tika
|
|
volumes:
|
|
- ./data:/usr/src/paperless/data
|
|
- ./media:/usr/src/paperless/media
|
|
- ./export:/usr/src/paperless/export
|
|
- ./consume:/usr/src/paperless/consume
|
|
env_file: docker-compose.env
|
|
networks:
|
|
- back_network_paperless
|
|
- traefik_front_network
|
|
environment:
|
|
PAPERLESS_REDIS: redis://broker:6379
|
|
PAPERLESS_DBHOST: db
|
|
PAPERLESS_TIKA_ENABLED: 1
|
|
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
|
|
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=traefik_front_network"
|
|
# HTTP
|
|
- "traefik.http.routers.paperless-http.rule=Host(`paperless.tips-of-mine.com`)"
|
|
- "traefik.http.routers.paperless-http.entrypoints=http"
|
|
# HTTPS
|
|
- "traefik.http.routers.paperless-https.rule=Host(`paperless.tips-of-mine.com`)"
|
|
- "traefik.http.routers.paperless-https.entrypoints=https"
|
|
- "traefik.http.routers.paperless-https.service=paperless-service"
|
|
- "traefik.http.routers.paperless-https.tls=true"
|
|
# Middleware
|
|
# Service
|
|
- "traefik.http.services.paperless-service.loadbalancer.server.port=8000"
|
|
|
|
###
|
|
gotenberg:
|
|
container_name: paperless-gotenberg
|
|
hostname: paperless-gotenberg
|
|
image: docker.io/gotenberg/gotenberg:8.7
|
|
restart: unless-stopped
|
|
networks:
|
|
- back_network_paperless
|
|
# The gotenberg chromium route is used to convert .eml files. We do not
|
|
# want to allow external content like tracking pixels or even javascript.
|
|
command:
|
|
- "gotenberg"
|
|
- "--chromium-disable-javascript=true"
|
|
- "--chromium-allow-list=file:///tmp/.*"
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
|
|
###
|
|
tika:
|
|
container_name: paperless-tika
|
|
hostname: paperless-tika
|
|
image: docker.io/apache/tika:latest
|
|
restart: unless-stopped
|
|
networks:
|
|
- back_network_paperless
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
|
|
###
|
|
msmtpd:
|
|
container_name: paperless-msmtpd
|
|
hostname: paperless-msmtpd
|
|
image: crazymax/msmtpd:latest
|
|
networks:
|
|
- back_network_paperless
|
|
environment:
|
|
- "TZ=Europe/Paris"
|
|
- "PUID=1500"
|
|
- "PGID=1500"
|
|
- "SMTP_HOST=10.0.4.52"
|
|
- "SMTP_PORT=587"
|
|
- "SMTP_TLS=on"
|
|
- "SMTP_STARTTLS=on"
|
|
- "SMTP_TLS_CHECKCERT=off"
|
|
- "SMTP_AUTH=on"
|
|
- "SMTP_USER=hostinfo@tips-of-mine.fr"
|
|
- "SMTP_PASSWORD=P@ssw0rd!12345+"
|
|
- "SMTP_DOMAIN=localhost"
|
|
- "SMTP_FROM=hostinfo@tips-of-mine.fr"
|
|
restart: always
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "echo EHLO localhost"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true" |