¿Estás creando el contenedor con el lanzador con las cosas de Servir Discourse desde una subcarpeta (prefijo de ruta) en lugar de un subdominio antes de que docker-compose lo inicie?
¿Cuál es el proxy? ¿Quizás simplemente iniciar Discourse con el lanzador y usar docker-args para configurar otras cosas que se necesiten? Para Traefik, hago algo como esto:
--docker-args "-l traefik.frontend.rule=Host:{{discourse_hostname}};PathPrefix:/{{discourse_subfolder}} \
-l traefik.frontend.entryPoints=https \
-l traefik.backend={{discourse_shortname}} \
-l traefik.port=80 \
{{ docker_extra_args | default('')}}"