Я выполнил команду ./discourse-setup, чтобы изменить настройки SMTP.
Мне не совсем понятно, какая настройка определяет адрес «отправителя» или «адрес для ответа».
У меня есть один адрес электронной почты для входа в SMTP, но я хочу, чтобы письма отображались как отправленные с (или с адресом для ответа) другого адреса электронной почты (в основном, в стиле no-reply@my-forum.com).
Вы ищете DISCOURSE_NOTIFICATION_EMAIL в вашем файле containers/app.yml.
Похоже, это убило мой Discourse. Пришлось восстановить веб-сайт, так как после простого изменения этой одной строки запустить его не удалось.
Звучит очень эзотерично, особенно без каких-либо деталей.
Шаги для воспроизведения:
- Discourse работает нормально
- Отредактируйте
app.yml, изменив одну строку в точности так, как предложено - Выполните
./launcher rebuild app(это всегда занимает очень много времени) - Пересборка завершается неудачей, и форум становится недоступным.
- Выполните
./discourse-doctor - Исправление не удается.
- Восстановите веб-сайт из резервной копии в состояние до редактирования
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