¡Hola!
Estoy configurando Discourse en un entorno donde necesito varios foros distintos, y donde el conjunto de foros debe ser flexible para cambiar con el tiempo. (Sí, realmente necesito múltiples foros; sirven a comunidades diferentes.)
La respuesta parece ser una instalación multi-sitio, y he logrado que funcione: actualmente tengo una configuración funcional para multi-sitio, con contenedores de datos y web separados, según Multisite configuration with Docker. (Tengo dos nombres de host, $hostname.$domain y discourse.$domain, lo cual ha funcionado en mis pruebas hasta ahora.)
Sin embargo, hay un inconveniente: no tengo un control fácil del DNS, por lo que no puedo agregar fácilmente múltiples nombres de host “reales”. Toda la documentación que he visto hasta ahora sugiere que esto es necesario para multi-sitio, y una rápida revisión del mecanismo mediante el cual se implementa el soporte multi-sitio indica que efectivamente es así.
Mi diseño ideal sería que cada foro se ubique dentro de su propio subdirectorio; es decir, discourse.$domain/forum1, …, discourse.$domain/forumN; y, de manera igualmente ideal, poder servir esos foros desde un único contenedor web, como lo hacen los mecanismos multi-sitio existentes.
Empíricamente, puedo mover con éxito el foro “principal” a un subdirectorio, trasladándolo a discourse.$domain/forum, según Serve Discourse from a subfolder (path prefix) instead of a subdomain — pero esto parece vincular el contenedor web exactamente a ese subdirectorio y, en mis experimentos, altera gravemente el funcionamiento multi-sitio.
También he probado trucos como modificar la cabecera Host: que entra al contenedor web, basándome en la ruta en el servidor web frontal del host, sin éxito — obtengo una mezcla extraña de múltiples foros.
Entonces: ¿hay una manera elegante de hacer esto? ¿Puedo conformarme con un solo contenedor web, al estilo multi-sitio? ¿O tendré que usar un segundo contenedor web? ¿Se comportará mal dado que ambos contenedores apuntarían al mismo contenedor de datos sin conocimiento del otro? ¿O estoy completamente perdido?