# tuwunel - Traefik Reverse Proxy Labels

services:
  homeserver:
    labels:
      - "traefik.enable=true"
      - "traefik.docker.network=proxy"  # Change this to the name of your Traefik docker proxy network

      - "traefik.http.routers.to-tuwunel.rule=Host(`<SUBDOMAIN>.<DOMAIN>`)"  # Change to the address on which tuwunel is hosted
      - "traefik.http.routers.to-tuwunel.tls=true"
      - "traefik.http.routers.to-tuwunel.tls.certresolver=letsencrypt"
      - "traefik.http.routers.to-tuwunel.middlewares=cors-headers@docker"
      - "traefik.http.services.to_tuwunel.loadbalancer.server.port=6167"

      - "traefik.http.middlewares.cors-headers.headers.accessControlAllowOriginList=*"
      - "traefik.http.middlewares.cors-headers.headers.accessControlAllowHeaders=Origin, X-Requested-With, Content-Type, Accept, Authorization"
      - "traefik.http.middlewares.cors-headers.headers.accessControlAllowMethods=GET, POST, PUT, DELETE, OPTIONS"

      # If you want to have your account on <DOMAIN>, but host tuwunel on a subdomain,
      # you can let it only handle the well known file on that domain instead
      #- "traefik.http.routers.to-matrix-wellknown.rule=Host(`<DOMAIN>`) && PathPrefix(`/.well-known/matrix`)"
      #- "traefik.http.routers.to-matrix-wellknown.tls=true"
      #- "traefik.http.routers.to-matrix-wellknown.tls.certresolver=letsencrypt"
      #- "traefik.http.routers.to-matrix-wellknown.middlewares=cors-headers@docker"

  ### Uncomment this if you uncommented Element-Web App in the docker-compose.yml
  # element-web:
  #     labels:
  #         - "traefik.enable=true"
  #         - "traefik.docker.network=proxy"  # Change this to the name of your Traefik docker proxy network

  #         - "traefik.http.routers.to-element-web.rule=Host(`<SUBDOMAIN>.<DOMAIN>`)"  # Change to the address on which Element-Web is hosted
  #         - "traefik.http.routers.to-element-web.tls=true"
  #         - "traefik.http.routers.to-element-web.tls.certresolver=letsencrypt"

# vim: ts=2:sw=2:expandtab

