После некоторых попыток я смог решить проблему самостоятельно.
Для справки прикрепляю мой app.yml:
...
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Раскомментируйте эти две строки, если хотите добавить Lets Encrypt (https)
#- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"
#- "templates/web.socketed.template.yml"
## Какие TCP/IP порты должен открывать этот контейнер?
## Если вы хотите, чтобы Discourse использовал порт совместно с другим веб-сервером, например Apache или nginx,
## см. https://meta.discourse.org/t/17247 для деталей
#expose:
# - "8060:80" # http
# - "8070:443" # https
...
docker_args:
- "--network=web"
#- "--expose=8060"
- "-l traefik.enable=true"
- "-l traefik.http.routers.forum.rule=Host(`forum.example.com`)"
- "-l traefik.http.routers.forum.entrypoints=websecure"
- "-l traefik.http.routers.forum.tls=true"
- "-l traefik.http.routers.forum.tls.certresolver=mytlschallenge"
- "-l traefik.http.services.forum.loadbalancer.server.port=80"
- "-l traefik.docker.network=web"