Cómo actualizar si `/var/discourse` solo tiene `shared` y no es un repositorio git

Estimados todos,

Tengo una instancia de Discourse configurada por el administrador anterior en nuestro servidor web del departamento. No sé mucho sobre Discourse, pero requiere una actualización y sugiere ejecutar:

        cd /var/discourse
        git pull
        ./launcher rebuild app

Pero cuando hago cd en /var/discourse, solo veo el directorio shared, y git pull falla en consecuencia (no es un repositorio de git). ¿Qué debo hacer?

1 me gusta

Deberías realizar una instalación limpia en una nueva máquina virtual, hacer una copia de seguridad y restaurarla en la nueva instalación.

Si no te gusta esa respuesta, entonces deberías pedirle a quien configuró eso que venga a arreglarlo.

2 Me gusta

@pfaffman ¿Qué quieres decir con una nueva máquina virtual? ¿Una imagen de Docker para Discourse? El problema es que no puedo encontrar un manual sobre cómo gestionar Discourse a través de Docker.

Una nueva VM significa un nuevo servidor virtual, suponiendo que tu instancia no esté en hardware dedicado.

Si tienes Discourse en ejecución pero /var/discourse está vacío, se trata de una instalación muy antigua o de un paquete no compatible.

En cualquier caso, debes crear una copia de seguridad, levantar un nuevo servidor virtual, seguir las pautas estándar de instalación y luego restaurar desde la copia de seguridad.

3 Me gusta

Haces esto: https://meta.discourse.org/t/discourse-official-standard-installation/142537

1 me gusta

Efectivamente, eso es lo más probable que esté ocurriendo. Está ejecutando Discourse 2.1.0 (si eso aclara las cosas).

Ese es el punto: mi instancia SÍ está en hardware dedicado.

Entonces, entiendo que actualmente no hay Docker involucrado. Al menos, no manualmente. Al menos, es bueno saber que solo hay una forma de configurarlo y que utiliza solo git clone y el script de configuración.

Lo que me preocupa es cómo eliminar suavemente la versión antigua, dado que todo ocurre en una máquina física real (es decir, nada “virtual”). Ya hice la copia de seguridad, eso es fácil. ¿Ahora qué?

1 me gusta

Ahora instálelo en una máquina diferente. Una máquina virtual es preferible, ya que es más fácil escalar los recursos. Los requisitos del sistema se encuentran en la documentación de instalación.

Una vez que tenga la nueva instalación en funcionamiento, restaure esa copia de seguridad.

¿Qué tipo de instancia es esta? ¿Qué tan ocupada está? ¿Se utiliza constantemente?

2 Me gusta

¡Vaya… eso es de mediados de 2018. Definitivamente quieres actualizar. Además de perder numerosas características excelentes, ha habido varias correcciones de seguridad, incluidas algunas críticas, que no tienes.

3 Me gusta

Lamentablemente, no tengo otra máquina.

Gracias por la retroalimentación, pero eso no está en duda: estoy intentando actualizar. No era el administrador de esta instancia hasta ayer y sé la importancia de las actualizaciones.

¡Gracias a todos por las respuestas! Le pregunté al viejo y me ayudó. El repositorio de Git estaba dentro de /var/docker en lugar de /var/discourse por alguna razón. Desde allí, fue posible aplicar el procedimiento estándar. Ahora estamos en la última versión (2.6), ¡sí! :tada:

4 Me gusta

¡Ajá! Esa era la ubicación recomendada hace mucho, mucho tiempo (antes de que empezara a usar Discourse hace 4 años).

¡Parece que mi solución de “preguntar al viejo” realmente funcionó!

5 Me gusta

Recomiendo dejar algo de documentación por si acaso:

echo "está en /var/docker" > where-is-launcher
2 Me gusta

Esa es una buena idea. O quizás:

 cd /var/
 ln -s /var/docker discourse

Aunque eso podría confundir a launcher.

1 me gusta

No es una buena idea porque /var/discourse ya existe y contiene shared

3 Me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.