version: "3.9"

networks:
  net:
    external: false

volumes:
  redis:

services:
  sharelatex:
    image: sharelatex/sharelatex
    container_name: sharelatex
    restart: unless-stopped
    depends_on:
      sharelatex-db:
      sharelatex-redis:
    ports:
      - "127.0.0.1:8080:80"
    volumes:
      - ./sharelatex_data:/var/lib/sharelatex
      - ./sharelatex_packages:/usr/local/texlive
    environment:
      SHARELATEX_APP_NAME: Overleaf
      SHARELATEX_MONGO_URL: mongodb://sharelatex-db/sharelatex
      SHARELATEX_REDIS_HOST: sharelatex-redis
      REDIS_HOST: sharelatex-redis
      ENABLED_LINKED_FILE_TYPES: 'url,project_file'
      ENABLE_CONVERSIONS: 'true'
      EMAIL_CONFIRMATION_DISABLED: 'true'
      TEXMFVAR: /var/lib/sharelatex/tmp/texmf-var
      SHARELATEX_SITE_URL: https://tex.tp.unjx.de
      SHARELATEX_NAV_TITLE: ShareLaTeX Instance
    networks:
      - net

  sharelatex-db:
    image: mongo:4.0
    container_name: sharelatex-db
    restart: unless-stopped
    volumes:
      - ./db:/data/db
    expose:
      - 27017
    networks:
      - net

  sharelatex-redis:
    image: redis:6
    container_name: sharelatex-redis
    restart: unless-stopped
    volumes:
      - redis:/data
    expose:
      - 6379
    networks:
      - net