@hellekin gracias.
No lo he hecho. Estoy seguro de que hay mucho allí, pero por lo general tiendo a mantenerme alejado, al menos para el trabajo, de los empleos de usuario único (en contraposición a los apoyados por la comunidad), por la simple razón de que puede volverse difícil mantenerlos más adelante.
La ruta específica realmente depende de algunos detalles de la plataforma.
Lo que veo como una posible solución en tu caso sería empezar a entender cómo funcionarían las imágenes estándar (Postgres, Redis, …) con Discourse sin personalizaciones específicas.
La razón por la que considero esto importante es que te da la capacidad de confiar, en cualquier lugar donde instales Discourse, en servicios estándar externos (que podrían instalarse en hardware físico, en una VM, en algunos contenedores, en k8s en forma de dependencias de gráficos, …).
Cada uno de estos servicios típicamente permite el uso de algunos scripts de inicio para crear una base de datos, etc. No debería ser tan difícil.
Luego, crearía un Dockerfile adecuado (que también se convierte automáticamente en tu guía de inicio rápido para los usuarios que deseen instalar Discourse sin Docker).
A continuación viene el docker-compose.yaml (esto es prácticamente lo mismo que Bitnami expone en su GitHub).
En este punto, deberías poder levantar Discourse en tu portátil en forma de "micro"servicios, utilizando imágenes de dependencias estándar, en unos segundos, con un solo comando, sin ningún script personalizado.
Por último, pero no menos importante, viene la diversión de Kubernetes (unos pocos archivos YAML, posiblemente empaquetados en forma de gráficos Helm), para publicarse en el repositorio oficial y estable, o alternativamente, al menos al principio del proceso, en tu repositorio autoalojado.