version: '3.3' services: app: build: . container_name: maubot restart: unless-stopped volumes: - /matrix/data/maubot/data:/data - /matrix/data/maubot/code:/code networks: - proxy ports: - 29316:29316 labels: - "traefik.enable=true" - "traefik.docker.network=proxy" - "traefik.http.routers.maubot.rule=Host(`maubot.matrix.example.pl`)" - "traefik.http.routers.maubot.entrypoints=websecure" - "traefik.http.services.maubot.loadbalancer.server.port=29316" - "traefik.http.routers.maubot.service=maubot" - "traefik.http.routers.maubot.tls.certresolver=letscrypt" - "traefik.http.middlewares.maubot-ratelimit.ratelimit.average=1000" - "traefik.http.middlewares.maubot-ratelimit.ratelimit.burst=500" - "traefik.http.middlewares.maubot-ipwhitelist.ipwhitelist.sourcerange=127.0.0.1/32, 192.168.0.0/16" logging: driver: "json-file" options: max-size: "100m" max-file: "10" networks: proxy: external: true