Изменение адреса e-mail «отправитель»

Я выполнил команду ./discourse-setup, чтобы изменить настройки SMTP.
Мне не совсем понятно, какая настройка определяет адрес «отправителя» или «адрес для ответа».
У меня есть один адрес электронной почты для входа в SMTP, но я хочу, чтобы письма отображались как отправленные с (или с адресом для ответа) другого адреса электронной почты (в основном, в стиле no-reply@my-forum.com).

Вы ищете DISCOURSE_NOTIFICATION_EMAIL в вашем файле containers/app.yml.

Похоже, это убило мой Discourse. Пришлось восстановить веб-сайт, так как после простого изменения этой одной строки запустить его не удалось.

Звучит очень эзотерично, особенно без каких-либо деталей.

Шаги для воспроизведения:

  1. Discourse работает нормально
  2. Отредактируйте app.yml, изменив одну строку в точности так, как предложено
  3. Выполните ./launcher rebuild app (это всегда занимает очень много времени)
  4. Пересборка завершается неудачей, и форум становится недоступным.
  5. Выполните ./discourse-doctor
  6. Исправление не удается.
  7. Восстановите веб-сайт из резервной копии в состояние до редактирования app.yml, и всё снова работает.

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

У вас есть нестандартные плагины?

Сколько у вас памяти?

Не совсем понял, что вы имеете в виду?

Извините. Я был невнимателен, используя телефон.

У вас, вероятно, закончилась память. Что показывает команда

free -h

?

Скорее всего, вы можете добавить больше swap-пространства (или оперативной памяти).

root@DO-Discourse:~# free -h
              total        used        free      shared  buff/cache   available
Mem:          965Mi       705Mi        72Mi        16Mi       187Mi        91Mi
Swap:         2.0Gi        17Mi       2.0Gi
root@DO-Discourse:~# 

Вы можете добавить больше оперативной памяти или увеличить файл подкачки. Вы можете попробовать что-то вроде этого для добавления файла подкачки, хотя я его не тестировал:

install -o root -g root -m 0600 /dev/null /swapfile2
fallocate -l 2G /swapfile2
mkswap /swapfile2
swapon /swapfile2
echo "/swapfile2       swap    swap    auto      0       0" | tee -a /etc/fstab

Другой вариант — создать один более большой файл подкачки.

Там уже 2 гигабайта бесплатно, вы действительно думаете, что нужно больше?
Я оставлю это до следующего раза, когда у меня будет время попробовать снова. Тогда я скопирую логи, если не получится. Я думаю, ответ где-то в этих логах.

Вы не приложили логи, но они, скорее всего, показывают, что сбой произошел из-за нехватки памяти. При неудачной пересборке вы можете (обычно) запустить её снова с помощью ./launcher start app.

Маловероятно, что добавление этой переменной окружения приведёт к неработоспособности Discourse. Если бы вы ошиблись в форматировании (что маловероятно, так как вы использовали discourse-setup для внесения изменений), это заняло бы мало времени.

Сейчас у вас много свободной памяти, но пересборка требует значительных ресурсов.

Если вы меняете только DISCOURSE_NOTIFICATION_EMAIL, вы можете отредактировать её с помощью nano и выполнить:

./launcher destroy app
./launcher start app