version: '2.2' services: sharelatex: restart: always image: tuetenk0pp/sharelatex-full container_name: sharelatex labels: - "traefik.enable=true" # handle https traffic - "traefik.http.routers.sharel-secured.rule=Host(`overleaf.mertens.digital`)" - "traefik.http.routers.sharel-secured.tls=true" - "traefik.http.routers.sharel-secured.tls.certresolver=letsencrypt" - "traefik.http.routers.sharel-secured.entrypoints=websecure" - "traefik.http.middlewares.sharel-secured.forwardauth.trustForwardHeader=true" # Docker loadbalance - "traefik.http.services.sharel.loadbalancer.server.port=80" - "traefik.http.services.sharel.loadbalancer.server.scheme=http" - "traefik.http.services.sharel.loadbalancer.sticky.cookie=true" - "traefik.http.services.sharel.loadbalancer.sticky.cookie.name=io" - "traefik.http.services.sharel.loadbalancer.sticky.cookie.httponly=true" - "traefik.http.services.sharel.loadbalancer.sticky.cookie.secure=true" - "traefik.http.services.sharel.loadbalancer.sticky.cookie.samesite=io" # labels: # caddy: overleaf.mertens.digital # caddy.reverse_proxy: "{{upstreams http 80}}" networks: - proxy - default depends_on: mongo: condition: service_healthy redis: condition: service_started ports: - 8088:80 - 8080:8080 links: - mongo - redis stop_grace_period: 60s volumes: - ./data/sharelatex_log:/var/log/sharelatex/ - ./data/sharelatex:/var/lib/sharelatex environment: SHARELATEX_APP_NAME: Overleaf Mertens SHARELATEX_MONGO_URL: mongodb://mongo/sharelatex SHARELATEX_REDIS_HOST: redis REDIS_HOST: redis ENABLED_LINKED_FILE_TYPES: 'project_file,project_output_file' ENABLE_CONVERSIONS: 'true' EMAIL_CONFIRMATION_DISABLED: 'true' TEXMFVAR: /var/lib/sharelatex/tmp/texmf-var #Proxy SHARELATEX_SECURE_COOKIE: 'true' SHARELATEX_BEHIND_PROXY: 'true' ## Set for SSL via nginx-proxy #VIRTUAL_HOST: 103.112.212.22 SHARELATEX_SITE_URL: https://overleaf.mertens.digital # SHARELATEX_NAV_TITLE: Our ShareLaTeX Instance # SHARELATEX_HEADER_IMAGE_URL: http://somewhere.com/mylogo.png # SHARELATEX_ADMIN_EMAIL: support@it.com # SHARELATEX_LEFT_FOOTER: '[{"text": "Powered by ShareLaTeX 2016"},{"text": "Another page I want to link to can be found here"} ]' # SHARELATEX_RIGHT_FOOTER: '[{"text": "Hello I am on the Right"} ]' SHARELATEX_EMAIL_FROM_ADDRESS: ${SHARELATEX_EMAIL_FROM_ADDRESS} # SHARELATEX_EMAIL_AWS_SES_ACCESS_KEY_ID: # SHARELATEX_EMAIL_AWS_SES_SECRET_KEY: SHARELATEX_EMAIL_SMTP_HOST: ${SHARELATEX_EMAIL_SMTP_HOST} SHARELATEX_EMAIL_SMTP_PORT: 25 SHARELATEX_EMAIL_SMTP_SECURE: "false" SHARELATEX_EMAIL_SMTP_USER: ${SHARELATEX_EMAIL_SMTP_USER} SHARELATEX_EMAIL_SMTP_PASS: ${SHARELATEX_EMAIL_SMTP_PASS} SHARELATEX_EMAIL_SMTP_TLS_REJECT_UNAUTH: "true" SHARELATEX_EMAIL_SMTP_IGNORE_TLS: "true" #SHARELATEX_EMAIL_SMTP_NAME: '127.0.0.1' SHARELATEX_EMAIL_SMTP_LOGGER: "true" #SHARELATEX_CUSTOM_EMAIL_FOOTER: "This system is run by department x" ################ ## Server Pro ## ################ # SANDBOXED_COMPILES: 'true' # SANDBOXED_COMPILES_SIBLING_CONTAINERS: 'true' # SANDBOXED_COMPILES_HOST_DIR: '/var/sharelatex_data/data/compiles' # DOCKER_RUNNER: 'false' ## Works with test LDAP server shown at bottom of docker compose # SHARELATEX_LDAP_URL: 'ldap://ldap:389' # SHARELATEX_LDAP_SEARCH_BASE: 'ou=people,dc=planetexpress,dc=com' # SHARELATEX_LDAP_SEARCH_FILTER: '(uid={{username}})' # SHARELATEX_LDAP_BIND_DN: 'cn=admin,dc=planetexpress,dc=com' # SHARELATEX_LDAP_BIND_CREDENTIALS: 'GoodNewsEveryone' # SHARELATEX_LDAP_EMAIL_ATT: 'mail' # SHARELATEX_LDAP_NAME_ATT: 'cn' # SHARELATEX_LDAP_LAST_NAME_ATT: 'sn' # SHARELATEX_LDAP_UPDATE_USER_DETAILS_ON_LOGIN: 'true' # SHARELATEX_TEMPLATES_USER_ID: "578773160210479700917ee5" # SHARELATEX_NEW_PROJECT_TEMPLATE_LINKS: '[ {"name":"All Templates","url":"/templates/all"}]' # SHARELATEX_PROXY_LEARN: "true" mongo: restart: always image: mongo:4.4 container_name: mongo expose: - 27017 volumes: - ./data/mongo_data:/data/db healthcheck: test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet interval: 10s timeout: 10s retries: 5 redis: restart: always image: redis:5 container_name: redis expose: - 6379 volumes: - ./data/redis_data:/data # nginx-proxy: # image: jwilder/nginx-proxy # container_name: nginx-proxy # ports: # #- "80:80" # - "443:443" # volumes: # - /var/run/docker.sock:/tmp/docker.sock:ro # - /home/sharelatex/tmp:/etc/nginx/certs networks: proxy: external: true