services: leantime_db: image: mysql:8.0 container_name: leantime-mysql expose: - 3306 volumes: - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/leantime/mysql:/var/lib/mysql restart: unless-stopped env_file: ./.env command: --character-set-server=UTF8MB4 --collation-server=UTF8MB4_unicode_ci #networks: # - proxy leantime: image: leantime/leantime:latest container_name: leantime restart: unless-stopped env_file: ./.env volumes: - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/leantime/public_data:/var/www/html/public/userfiles - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/leantime/data:/var/www/html/userfiles ports: - "8080:80" # The port to expose and access Leantime expose: - 80 depends_on: - leantime_db # Don't start Leantime unless leantime_db is running #networks: # - proxy #labels: # - traefik.enable=true # - traefik.http.routers.leantime.rule=Host(`leantime.example.com`) # - traefik.http.services.leantime.loadbalancer.server.port=80 # - traefik.http.middlewares.limit.buffering.maxRequestBodyBytes=50000000 # optional, only necessary for enabled file uploads # - traefik.http.middlewares.limit.buffering.maxResponseBodyBytes=50000000 # optional, only necessary for enabled file uploads # - traefik.http.middlewares.limit.buffering.memRequestBodyBytes=50000000 # optional, only necessary for enabled file uploads # - traefik.http.middlewares.limit.buffering.memResponseBodyBytes=50000000 # optional, only necessary for enabled file uploads # - traefik.docker.network=proxy # # Part for optional traefik middlewares # - traefik.http.routers.leantime.middlewares=local-ipwhitelist@file,authelia@file,basic-auth@file #networks: # proxy: # external: true