¿Qué proceso crea los activos de las hojas de estilo durante la compilación, por ejemplo, /stylesheets/color_definitions_dark_1_1_603243e2b6c0b7xydx234the00538538bd705.css?
¿Supongo que este es el proceso de empaquetado (bundling)?
¿Qué podría estar saliendo mal si faltan estos?
¿Deberían empezar a existir como parte del inicio de ember-cli o del servidor rails?
¿Qué enfoque debería tomar para crearlos en docker a partir de la imagen estándar de discourse o debería esperar que existan simplemente al iniciar los servidores?
Las hojas de estilo se compilan bajo demanda por la aplicación Rails, por lo que en teoría no necesitas hacer nada manualmente.
Ejecutar bin/rake assets:precompile las compilará de forma anticipada, lo que puede ser útil si deseas crear una imagen Docker optimizada para desplegar en múltiples hosts.
Los activos compilados bajo demanda (por ejemplo, hojas de estilo, scripts de temas, sprites svg) no se cargan en S3. Se obtienen directamente de la aplicación (o a través de CDN_URL, si está configurado).
Los elementos estáticos como JS principales/de complementos y las configuraciones regionales se generan mediante assets:precompile y se garantiza que nunca cambien en tiempo de ejecución.
Ya veo; eso ayuda a explicar por qué algunas cosas son servidas por la aplicación. Si hay varios contenedores en ejecución (digamos, detrás de un balanceador de carga), cada uno de ellos generará esos bajo demanda.
Sí, exactamente. Estas cosas también tienden a almacenarse en caché en postgres/redis, por lo que solo necesitan ser generadas por el primer contenedor de aplicaciones que reciba una solicitud. Los otros contenedores pueden obtener la versión compilada de forma económica de redis/postgres y escribirla en el sistema de archivos.
Y si hay una CDN, entonces quizás ni siquiera necesiten hacerlo, supongo.
Estoy trabajando con alguien que parece tener un problema con algunos recursos que no se cargan (algunos iconos aparecen muy grandes) y estoy buscando alguna explicación.