Мой сайт не работает после установки плагина

Я попытался установить плагин, и при выполнении команды ./launcher rebuild app возникла следующая ошибка:

Я использовал ./discourse-doctor, но это не помогло.

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

теперь покажите это

root@ForumPandex:/var/discourse# ./launcher rebuild app
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
(<unknown>): could not find expected ':' while scanning a simple key at line 67 column 3 -e LANG=en_US.UTF-8
YAML syntax error. Please check your containers/*.yml config files.

Похоже, в вашем app.yml есть опечатка.

Первое сообщение об ошибке указывает на ваш email для Let’s Encrypt, но второе говорит о том, что отсутствует двоеточие. Не заметили ли вы ничего очевидного, что вы случайно добавили или удалили при редактировании для установки плагина?

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.>

## Любые пользовательские команды для запуска после сборки
run:
  - exec: echo "Начало пользовательских команд"
  ## Если вы хотите установить адрес электронной почты в поле 'От' для первой регистрации, раскомментируйте и измените:
  ## После получения первого письма о регистрации снова закомментируйте эту строку. Она должна выполниться только один раз.
  #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
  - exec: echo "Конец пользовательских команд"

@JammyDodger прав насчёт опечатки. Я вижу как минимум три:

И все ваши плагины там продублированы.

На самом деле, когда я создавал это, я скопировал неправильно. Есть ли способ скопировать всё сразу из подсказки?

Ребята, я даже не знаю, что я сделал, я просто знаю, что сайт всё ещё не работает. Как мне понять, что я сделал не так?

Теперь Discourse Doctor сообщает следующее:

======================================== ОШИБКА ========================================
                                    НЕОЖИДАННАЯ ОШИБКА

Тайм-аут при установлении TCP-соединения с email-smtp.us-east-1.amazonaws.com:25 (превышено 5 секунд)

====================================== РЕШЕНИЕ =======================================
Это не распространённая ошибка. Рекомендованного решения не существует!

Пожалуйста, сообщите точное сообщение об ошибке выше по адресу https://meta.discourse.org/
(А также решение, если вы его найдёте!)
=======================================================================================
Замена: SMTP_PASSWORD
Замена: LETSENCRYPT_ACCOUNT_EMAIL
Замена: DEVELOPER_EMAILS
Замена: DISCOURSE_DB_PASSWORD
Замена: Отправка писем на

==================== ГОТОВО! ====================
Хотите опубликовать общедоступную версию этого файла? (Y/n)

Вы должны иметь возможность перезапустить старый контейнер с помощью

./launcher start app

Затем вам нужно исправить ваш yml.

Кстати, Discourse Doctor должен был перезапустить старый контейнер.

всё ещё плохо
я в отчаянии

Самый простой способ — переименовать ваш app.yml в broken.yml, а затем запустить ./discourse-setup. Это создаст новый файл app.yml, но не удаляйте ваши существующие данные.

Я попробовал, и теперь это отображается

Проверка вашего доменного имени . . .
ПРЕДУПРЕЖДЕНИЕ: Порт 443 компьютера, по-видимому, недоступен по имени хоста: www.dexforum.com.br].
ПРЕДУПРЕЖДЕНИЕ: Подключение к http://www.dexforum.com.br] (порт 80) также не удаётся.

Это указывает на то, что www.dexforum.com.br] разрешается в IP-адрес, который не достигает этой
машины, где вы устанавливаете Discourse.

Первое, что нужно сделать, — убедиться, что www.dexforum.com.br] разрешается в IP-адрес этого сервера.
Обычно это делается в том же месте, где вы приобрели домен.

Если вы уверены, что IP-адрес разрешается корректно, проблема может быть в брандмауэре.
Поиск в интернете по запросу «открыть порты ВАШЕ ОБЛАЧНОЕ СЕРВИС» может помочь.

Этот инструмент предназначен только для самых стандартных установок. Если вы не сможете решить
проблему выше, вам потребуется самостоятельно отредактировать containers/app.yml, а затем ввести

./launcher rebuild app

Что ж, мне удалось настроить Discourse, но при пересборке появляется следующее:

(<unknown>): mapping values are not allowed in this context at line 98 column 12 -e LANG=en_US.UTF-8
YAML syntax error. Please check your containers/*.yml config files.

Вы редактировали app.yml вручную, например, чтобы добавить плагин?

Да, именно здесь находятся хуки after_code для плагинов.

@danielabc, если вы хотите, чтобы мы вам помогли, вам нужно давать обратную связь по шагам, которые мы предоставляем, в идеале — строго следуя инструкциям. Установка плагинов произойдёт после того, как мы поможем вам восстановить работающий экземпляр.

Мне удалось решить проблему, но меня удивило то, что все файлы .yml, созданные Discourse, имели неверное форматирование. Это возможно? Я ничего не делал, даже не редактировал их, но .yml всегда создавался с неправильным форматированием.

Я использовал https://www.yamllint.com/, который нашёл в Google; он помог мне исправить форматирование, и в итоге я смог выполнить пересборку.

Однако я никогда не предполагал, что система может создавать файл .yml с ошибками форматирования. Это меня сбило с толку.

Настройка Discourse не менялась уже около шести месяцев.

Единственный способ, которым я могу представить, что это могло привести к некорректно сформированному YAML — это ответы на запросы.

Вы скопировали и вставили ответы или ввели их вручную?

Эта скобка не должна быть здесь.

Я только что сгенерировал команду для создания нового .yml, но ничего не изменил в новом .yml. Я просто выполнил пересборку, которая завершилась ошибкой из-за некорректного форматирования.