Mi sitio está caído después de instalar un plugin

Fui a instalar un plugin y comenzó a dar el siguiente error en la parte donde hago el./launcher rebuild app

Uso ./discourse-doctor pero no se soluciona

FAILED
--------------------
Pups::ExecError: if [ -z "$LETSENCRYPT_ACCOUNT_EMAIL" ]; then echo "LETSENCRYPT_ACCOUNT_EMAIL ENV variable is required and has not been set."; exit 1; fi failed with return #<Process::Status: pid 2296 exit 1>
Location of failure: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cmd"=>["if [ -z \"$LETSENCRYPT_ACCOUNT_EMAIL\" ]; then echo \"LETSENCRYPT_ACCOUNT_EMAIL ENV variable is required and has not been set.\"; exit 1; fi", "/bin/bash -c \"if [[ ! \\\"$LETSENCRYPT_ACCOUNT_EMAIL\\\" =~ ([^@]+)@([^\\\\.]+) ]]; then echo \\\"LETSENCRYPT_ACCOUNT_EMAIL is not a valid email address\\\"; exit 1; fi\""]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
324b6cc40db917188cb3d87640ff1a1c23142c551b71bc55b0f33ccd88e88af7

ahora muestra esto

root@ForumPandex:/var/discourse# ./launcher rebuild app
Se detectó la arquitectura x86_64.
Asegurando que el lanzador esté actualizado
Obteniendo origen
El lanzador está actualizado
(unknown): no se pudo encontrar el ':' esperado al escanear una clave simple en la línea 67 columna 3 -e LANG=en_US.UTF-8
Error de sintaxis YAML. Por favor, comprueba tus archivos de configuración containers/*.yml.

Parece que puede haber un error tipográfico en tu app.yml.

El primer mensaje de error apuntaría a tu correo electrónico de let’sencrypt, pero el segundo sugiere que falta un dos puntos. ¿Puedes ver algo obvio que hayas agregado/eliminado accidentalmente mientras editabas para agregar el plugin?

3 Me gusta
ger.git
          - git clone https://github.com/discourse/discourse-spoiler-alert.git
          - git clone https://github.com/discourse/discourse-yearly-review.git
          - git clone https://github.com/mondiscourse/discourse-formatting-toolbar.git
          - git clone https://github.com/techapj/discourse-custom-topic-button.git
          - git clone https://github.com/discourse/discourse-chat.git
          - git clone https://github.com/discourse/discourse-adplugin.git
          - git clone https://github.com/communiteq/discourse-delete-unreplied-topics
          - git clone https://github.com/discourse/discourse-animated-avatars
          - git clone https://github.com/gnunicorn/discourse-plugin-replygif
          - git clone https://github.com/discourse/discourse-gamification
          - git clone https://github.com/discourse/discourse-reactions.git
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-spoiler-alert.git
          - git clone https://github.com/discourse/discourse-yearly-review.git
          - git clone https://github.com/mondiscourse/discourse-formatting-toolbar.git
          - git clone https://github.com/techapj/discourse-custom-topic-button.git
          - git clone https://github.com/discourse/discourse-chat.git
          - git clone https://github.com/discourse/discourse-adplugin.git
          - git clone https://github.com/communiteq/discourse-delete-unrepl
          - git clone https://github.com/discourse/discourse-animated-avata
          - git clone https://github.com/gnunicorn/discourse-plugin-replygif
          - git clone https://github.com/discourse/discourse-gamification
          - git clone https://github.com/discourse/discourse-reactions.git
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-spoiler-alert.

## Cualquier comando personalizado para ejecutar después de la compilación
run:
  - exec: echo "Inicio de comandos personalizados"
  ## Si desea establecer la dirección de correo electrónico 'De' para su primer registro, descomente y cambie:
  ## Después de recibir el primer correo electrónico de registro, vuelva a comentar la línea. Solo necesita ejecutarse una vez.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "Fin de comandos personalizados"

@JammyDodger tiene razón sobre el error tipográfico. Veo al menos tres:

4 Me gusta

Eso, y todos tus plugins están ahí dos veces.

4 Me gusta

en realidad, cuando lo creé lo copié mal, ¿hay alguna forma de copiarlo todo a la vez desde el prompt?

Chicos, ya ni sé lo que hice, solo sé que el sitio todavía está caído, ¿cómo puedo saber qué hice mal?

ahora el discourse doctor dice esto

======================================== ERROR ========================================
                                    UNEXPECTED ERROR

Timeout to open TCP connection to email-smtp.us-east-1.amazonaws.com:25 (exceeds 5 seconds)

====================================== SOLUTION =======================================
This is not a common error. No recommended solution exists!

Please report the exact error message above to https://meta.discourse.org/
(And a solution, if you find one!)
=======================================================================================
Replacing: SMTP_PASSWORD
Replacing: LETSENCRYPT_ACCOUNT_EMAIL
Replacing: DEVELOPER_EMAILS
Replacing: DISCOURSE_DB_PASSWORD
Replacing: Sending mail to

==================== DONE! ====================
Would you like to serve a publicly available version of this file? (Y/n)

Deberías poder reiniciar el contenedor antiguo con

./launcher start app

Luego, necesitas arreglar tu yml.

Oh, discourse doctor debería haber reiniciado el contenedor antiguo.

sigue mal
estoy desesperado

Lo más fácil podría ser renombrar tu app.yml a broken.yml y luego ejecutar ./discourse-setup. Esto creará un nuevo app.yml, pero no elimines tus datos existentes.

8 Me gusta

Lo intenté y ahora muestra esto

Comprobando el nombre de tu dominio . . .
ADVERTENCIA: No parece ser posible acceder al puerto 443 del ordenador usando el nombre de host: www.dexforum.com.br].
ADVERTENCIA: La conexión a http://www.dexforum.com.br] (puerto 80) también falla.

Esto sugiere que www.dexforum.com.br] se resuelve en una dirección IP que no llega a esta
máquina donde estás instalando discourse.

Lo primero que debes hacer es confirmar que www.dexforum.com.br] se resuelve en la dirección IP de este servidor.
Normalmente haces esto en el mismo lugar donde compraste el dominio.

Si estás seguro de que la dirección IP se resuelve correctamente, podría ser un problema de firewall.
Una búsqueda web de "abrir puertos TU SERVICIO EN LA NUBE" podría ayudar.

Esta herramienta está diseñada solo para las instalaciones más estándar. Si no puedes resolver
el problema anterior, necesitarás editar tú mismo containers/app.yml y luego escribir

./launcher rebuild app

Bueno, ahora logré configurar discourse, pero al reconstruir, aparece esto

(desconocido): los valores de mapeo no están permitidos en este contexto en la línea 98 columna 12 -e LANG=en_US.UTF-8
Error de sintaxis YAML. Por favor, comprueba tus archivos de configuración containers/*.yml.

¿Editaste app.yml a mano, para, por ejemplo, añadir un plugin?

Sí, ahí es donde están los ganchos after_code para los plugins.

@danielabc si quieres que te ayudemos, entonces necesitas proporcionar comentarios sobre los pasos que proporcionamos, idealmente sin salirte de las líneas. La instalación de plugins vendrá después de que te ayudemos a reconstruir una instancia funcional.

1 me gusta

Logré resolverlo, pero ¿saben qué me pareció extraño, fue que todos los .yml que Discourse creó tenían el formato incorrecto? ¿Es esto posible? No hice nada, ni siquiera lo edité, pero el .yml siempre se creó con el formato incorrecto.

Usé https://www.yamllint.com/, que encontré en Google, me ayudó con el formato correcto y finalmente pude hacer una reconstrucción.

pero nunca tuve en cuenta que el archivo .yml pudiera estar siendo mal formateado por el sistema, esto me dejó confundido.

1 me gusta

Discourse-setup no ha cambiado en unos seis meses.
La única forma en que se me ocurre que podría producir yaml mal formado es a través de las respuestas a las indicaciones.
¿Copiaste y pegaste las respuestas o las introdujiste a mano?

2 Me gusta

Ese corchete no debería estar ahí.

Acabo de generar un comando para crear un nuevo .yml, pero no cambié nada en el nuevo .yml, solo hice la reconstrucción que dio un error debido a un formato incorrecto.