# vi: ft=yaml version: '3' networks: traefik: external: true overleaf: volumes: data: driver_opts: type: "nfs" o: "addr=192.168.30.10,nolock,soft,rw" device: ":/mnt/data/overleaf/data" redis: driver_opts: type: "nfs" o: "addr=192.168.30.10,nolock,soft,rw" device: ":/mnt/data/overleaf/redis" mongodb: driver_opts: type: "nfs" o: "addr=192.168.30.10,nolock,soft,rw" device: ":/mnt/data/overleaf/mongodb" services: sharelatex: image: sharelatex/sharelatex:3 networks: - traefik - overleaf depends_on: - overleaf-mongodb - overleaf-redis stop_grace_period: 60s volumes: - type: volume source: data target: /var/lib/sharelatex volume: nocopy: true deploy: labels: - traefik.enable=true - traefik.http.routers.overleaf.entrypoints=websecure - traefik.http.routers.overleaf.rule=Host(`latex.kun.is`) - traefik.http.routers.overleaf.tls=true - traefik.http.routers.overleaf.tls.certresolver=letsencrypt - traefik.http.routers.overleaf.service=overleaf - traefik.http.services.overleaf.loadbalancer.server.port=80 - traefik.docker.network=traefik environment: SHARELATEX_APP_NAME: Overleaf Community Edition SHARELATEX_MONGO_URL: mongodb://overleaf-mongodb:27017/sharelatex # Same property, unfortunately with different names in # different locations SHARELATEX_REDIS_HOST: overleaf-redis REDIS_HOST: overleaf-redis ENABLED_LINKED_FILE_TYPES: 'project_file,project_output_file' # Enables Thumbnail generation using ImageMagick ENABLE_CONVERSIONS: 'true' # Disables email confirmation requirement EMAIL_CONFIRMATION_DISABLED: 'true' # temporary fix for LuaLaTex compiles # see https://github.com/overleaf/overleaf/issues/695 TEXMFVAR: /var/lib/sharelatex/tmp/texmf-var SHARELATEX_SITE_URL: https://latex.kun.is SHARELATEX_ADMIN_EMAIL: pim@kunis.nl SHARELATEX_EMAIL_FROM_ADDRESS: "noreply@kunis.nl" SHARELATEX_EMAIL_SMTP_HOST: "smtp.tweak.nl" SHARELATEX_EMAIL_SMTP_PORT: 587 SHARELATEX_EMAIL_SMTP_USER: "" SHARELATEX_EMAIL_SMTP_PASS: "" overleaf-mongodb: image: mongo:4.4 networks: - overleaf expose: - 27017 volumes: - type: volume source: mongodb target: /data/db volume: nocopy: true healthcheck: test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet interval: 10s timeout: 10s retries: 5 overleaf-redis: image: redis:5 networks: - overleaf expose: - 6379 volumes: - type: volume source: redis target: /data volume: nocopy: true