################################################################################
# Don't forget to set the proxy variables in your nopaque.env                  #
# Traefik sets the X_FOR, X_HOST, X_PORT and X_PROTO headers by default        #
################################################################################
version: "3.5"

networks:
  traefik:
    external: true
    name: "traefik"

services:
  nopaque:
    labels:
      - "traefik.docker.network=traefik"
      - "traefik.enable=true"
      ### <http> ###
      - "traefik.http.middlewares.http-nopaque-headers.headers.customrequestheaders.X-Forwarded-Proto=http"
      - "traefik.http.routers.http-nopaque.entrypoints=http"
      - "traefik.http.routers.http-nopaque.middlewares=http-nopaque-headers, redirect-to-https@file"
      # Replace <nopaque-domain> with your domain
      - "traefik.http.routers.http-nopaque.rule=Host(`<nopaque-domain>`)"
      ### </http> ###
      ### <https> ###
      - "traefik.http.middlewares.https-nopaque-headers.headers.customrequestheaders.X-Forwarded-Proto=https"
      - "traefik.http.routers.https-nopaque.entrypoints=https"
      - "traefik.http.routers.https-nopaque.middlewares=hsts-header@file, https-nopaque-headers"
      # Replace <nopaque-domain> with your domain
      - "traefik.http.routers.https-nopaque.rule=Host(`<nopaque-domain>`)"
      - "traefik.http.routers.https-nopaque.tls.certresolver=<CERTRESOLVER>"
      - "traefik.http.routers.https-nopaque.tls.options=intermediate@file"
      ### </https> ###
    networks:
      - default
      - traefik
