71 lines
1.9 KiB
YAML
71 lines
1.9 KiB
YAML
services:
|
|
overleaf:
|
|
build: .
|
|
container_name: overleaf
|
|
restart: always
|
|
depends_on:
|
|
overleaf_db:
|
|
condition: service_healthy
|
|
overleaf_redis:
|
|
condition: service_healthy
|
|
environment:
|
|
ENABLE_CONVERSIONS: true
|
|
OVERLEAF_ADMIN_EMAIL: mail@eliasfink.de
|
|
OVERLEAF_APP_NAME: EFtex
|
|
OVERLEAF_RIGHT_FOOTER: '[{"text": "Datenschutz", "url" : "https://privacy.eliasfink.de"}]'
|
|
OVERLEAF_EMAIL_FROM_ADDRESS: no-reply@eliasfink.de
|
|
OVERLEAF_EMAIL_SMTP_HOST: mxe92f.netcup.net
|
|
OVERLEAF_EMAIL_SMTP_PORT: 465
|
|
OVERLEAF_EMAIL_SMTP_SECURE: true
|
|
OVERLEAF_EMAIL_SMTP_USER: no-reply@eliasfink.de
|
|
OVERLEAF_EMAIL_SMTP_PASS: ${EMAIL_PASSWORD}
|
|
OVERLEAF_HEADER_IMAGE_URL: https://static.eliasfink.de/img/logo/logo.svg
|
|
OVERLEAF_MONGO_URL: mongodb://overleaf_db/overleaf
|
|
OVERLEAF_REDIS_HOST: overleaf_redis
|
|
OVERLEAF_SITE_LANGUAGE: de
|
|
OVERLEAF_SITE_URL: https://tex.eliasfink.de
|
|
REDIS_HOST: overleaf_redis
|
|
networks:
|
|
- default
|
|
- traefik
|
|
stop_grace_period: 60s
|
|
volumes:
|
|
- ./data:/var/lib/overleaf
|
|
|
|
overleaf_db:
|
|
image: mongo:6.0
|
|
container_name: overleaf_db
|
|
restart: always
|
|
command: --replSet overleaf
|
|
environment:
|
|
MONGO_INITDB_DATABASE: overleaf
|
|
extra_hosts:
|
|
- overleaf_db:127.0.0.1
|
|
healthcheck:
|
|
test: echo 'db.stats().ok' | mongosh localhost:27017/test --quiet
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
networks:
|
|
- default
|
|
volumes:
|
|
- ./db:/data/db
|
|
- ./config/mongodb-init-replica-set.js:/docker-entrypoint-initdb.d/mongodb-init-replica-set.js
|
|
|
|
overleaf_redis:
|
|
image: redis:6.2
|
|
container_name: overleaf_redis
|
|
restart: always
|
|
healthcheck:
|
|
test: redis-cli ping
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
networks:
|
|
- default
|
|
volumes:
|
|
- ./cache:/data
|
|
|
|
networks:
|
|
traefik:
|
|
external: true |