Caprover es esencialmente un Heroku autoalojado, junto con la capacidad de implementar un contenedor Docker con un solo clic.
Los detalles de estas aplicaciones de un solo clic se encuentran en un archivo .yml; actualmente existe uno para Discourse, pero se basa en la versión 2.4.4 de Discourse.
La instalación depende de la variable de entorno ALLOW_EMPTY_PASSWORD=yes.
Instalar una versión más reciente de Discourse que la versión 2.4.4 simplemente no funciona: arroja errores pidiendo que se proporcionen las contraseñas de PostgreSQL y Redis en variables de entorno. Cuando se proporcionan, falla de otra manera (¡me di por vencido, así que no recuerdo!).
Instalar la versión 2.4.4 e intentar actualizar desde el panel no funciona, ya que arroja el error de que Sidekiq no se está ejecutando y no se puede abrir un shell en la aplicación.
¡No entiendo lo suficiente cómo funcionan Discourse, Docker o Caprover como para modificar el archivo .yml y hacerlo funcionar con una versión más reciente!
¿Alguien tiene alguna indicación?
¿Alguna novedad al respecto? Yo también estoy intentando instalar Discourse a través de Caprover, pero solo funciona la 2.4.4 y utiliza contraseñas vacías inseguras. Cada vez que intento usar cualquier otra versión, no funciona.
Cuando se proporcionan, falla de otra manera (¡me di por vencido, así que no recuerdo!).
Es curioso que yo haya seguido la misma ruta, intentando una instalación más reciente, configurando variables de entorno de la contraseña de postgres, intentando actualizar la contraseña de postgres en el contenedor, y aun así no funcionó…
Contactar a la gente de Caprover tampoco sirve de mucho, ya que solo se encargan de la plataforma en sí, cada desarrollador de aplicaciones debe proporcionar su propio archivo de configuración de un clic basado en contenedores Docker. Además, como la versión 2.4.4 funciona, supongo que debería ser fácil averiguar qué cambió y arreglarlo para la última versión.
La única instalación que admitimos aquí es la instalación estándar.
Terceros crean paquetes para animar a los usuarios a utilizar su producto, servicio o plataforma.
Como estás experimentando, esos paquetes no están bien mantenidos. No podemos asumir ninguna de las deudas técnicas que generan, pero podemos ayudarte a instalar Discourse de una manera que siga funcionando en el futuro.
Eres bienvenido a hacer esa suposición. Años de ayudar a los usuarios aquí han demostrado que estos paquetes pueden romperse de maneras impredecibles. Realmente depende de ti, de caprover y del desarrollador del paquete.
Entiendo, yo mismo soy desarrollador de aplicaciones, pero definitivamente hay formas en que los usuarios pueden instalar la aplicación más fácilmente. Es por eso que, por ejemplo, proporcionas una imagen de Docker, aunque Docker también es un tercero. También creo que vi en DigitalOcean una aplicación de un clic para Discourse. Creo que depende de los desarrolladores proporcionar diversas formas en que los usuarios puedan instalar su producto y admitir diferentes plataformas.
Sí, las cosas se rompen con el tiempo si el desarrollador no las soporta, por eso creo que depende del desarrollador crearlas y mantenerlas, y ofrecer a los usuarios una forma fácil de instalar su producto en varios entornos.
¿No es esto lo mismo que el desarrollador proporciona una compilación para Windows, otra para Linux? Sí, el desarrollador puede decir que solo damos soporte a Linux y obligar a los usuarios a usarlo si quieren el producto, pero también podrían agregar soporte para otras plataformas.
Además, por lo que he visto hasta ahora con CapRover, todo lo que hay que hacer es crear un archivo yml correcto, que es poco probable que se rompa con el tiempo a menos que el producto en sí (o las tecnologías que utiliza) reciba actualizaciones que rompan la compatibilidad.