Как изменить количество единорогов?

Здравствуйте,

Я хотел бы узнать, как настроить количество запущенных процессов Unicorn. Мне нужно это для регулировки потребления оперативной памяти, но я не смог найти конкретной информации об этом ни на этом форуме, ни в интернете.

Меня интересует следующая информация: расположение правильного файла, имя строки, которую нужно изменить, а также любые необходимые меры предосторожности и т. д.

Предполагаю, что после внесения изменений необходимо корректно перезапустить/пересобрать программное обеспечение. Как это сделать правильно?

Спасибо за ваше время.

Чтобы изменить эти настройки, отредактируйте файл app.yml

cd /var/discourse
nano containers/app.yml

Примерно на строке 48 у вас должно быть следующее:

## How many concurrent web requests are supported? Depends on memory and CPU cores.
  ## will be set automatically by bootstrap based on detected CPUs, or you can override
  UNICORN_WORKERS: 8

Я не эксперт в этой области, но, возможно, стоит проверить строки ~30, чтобы уменьшить количество:

  ## Set db_shared_buffers to a max of 25% of the total memory.
  ## will be set automatically by bootstrap based on detected RAM, or you can override
  db_shared_buffers: "2048MB"

Сохраните файл (обычно CTRL+X, затем Y), после чего вам действительно нужно пересобрать Discourse, чтобы применить новые настройки, используя команду:

./launcher rebuild app

Ваш форум будет недоступен примерно 10 минут в процессе.

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

 ./launcher destroy app; ./launcher start app

Я почти уверен (но не смотрел), что изменения в db_shared_buffers требуют пересборки (или вы можете отредактировать соответствующий файл настроек внутри контейнера, а затем перезапустить его).

Моя установка Discourse была выполнена через YunoHost, и, похоже, некоторые вещи отличаются. Мне не удалось найти файл app.yml.

Я жду ответа от команды YunoHost. Буду держать вас в курсе.

Я развернул свой форум Discourse на Yunohost и столкнулся с проблемой настройки SMTP для электронной почты. После тщательного изучения документации meta.discourse я не нашёл никакой информации об особенностях работы Yunohost или о расположении файлов сохранения. Я переустановил Discourse, скопировал файл журнала и, наконец, нашёл файл конфигурации, содержащий информацию о SMTP.

Если вы также используете Yunohost и вам нужно настроить параметры SMTP для Discourse, файл, который нужно изменить, находится по адресу:

/var/www/discourse/config/discourse.conf.

Откройте этот файл, настройте параметры SMTP, сохраните изменения и выйдите, а затем перезапустите Discourse командой “systemctl restart discourse”.

root@yuno:~# nano /var/www/discourse/config/discourse.conf
root@yuno:~# systemctl restart discourse

И если это кому-то поможет, так как я тоже не мог найти информацию:

Чтобы настроить Discourse с Office365, выполните следующие действия:

  1. Перейдите в центр администрирования Microsoft 365.
  2. Нажмите «Настройки», затем «Домены».
  3. Нажмите «Добавить домен».
  4. Следуйте инструкциям на экране, чтобы добавить URL вашего форума.
  5. После выполнения указанных выше шагов и проверки DNS вы сможете создать почтовый ящик, используя этот поддомен.
  6. Нажмите «Пользователи», затем «Активные пользователи».
  7. Нажмите «Добавить пользователя».
  8. Создайте почтовый ящик для вашего форума (например, noreply@forum.yourlinks.com). Домен почтового ящика должен совпадать с именем хоста, с которого работает форум.
  9. Нажмите «Лицензии и приложения».
  10. Назначьте этому почтовому ящику лицензию Exchange Online (План 1) (лимит 10 000 сообщений в день, ограничение 30 сообщений в минуту). Для прямой доставки direct-delivery необходимо, чтобы к почтовому ящику была привязана лицензия. На момент написания стоимость составляет 4,00 USD/мес или 5,10 CAD/мес. Если вам требуется более высокий лимит или меньшее ограничение, доступны другие тарифные планы.
  11. Нажмите «Почта», затем «Управление почтовыми приложениями».
  12. Включите «Проверенный SMTP».
  13. Нажмите «Сохранить изменения».
  14. Перейдите в портал Azure.
  15. Перейдите к вашему каталогу Active Directory.
  16. В левой боковой панели, сразу под «Настройки пользователя», выберите «Свойства».
  17. Выберите «Управление параметрами безопасности по умолчанию».
  18. Установите «Параметры безопасности по умолчанию» в значение «Отключено».
  19. Нажмите «Сохранить».
  20. Вернитесь в раздел «Пользователи» > «Активные пользователи».
  21. Нажмите «Многофакторная аутентификация».
  22. Отключите MFA для используемого почтового ящика.

Теперь, что касается Office365/Microsoft365, ваш новый почтовый ящик готов к прямой отправке от имени вашего экземпляра Discourse.

Параметры для использования почтового ящика Office365:
измените эти строки в файле /var/www/discourse/config/discourse.conf

# имя хоста, на котором работает форум
hostname = "forum.yourlinks.com"

# резервное имя хоста, в основном для использования CDN
backup_hostname =

# адрес SMTP-сервера, используемого для отправки писем
smtp_address = smtp.office365.com

# порт SMTP-сервера, используемого для отправки писем
smtp_port = 587

# домен, передаваемый на SMTP-сервер
smtp_domain = forum.yourlinks.com

# имя пользователя для SMTP-сервера
smtp_user_name = noreply@forum.yourlinks.com

# пароль для SMTP-сервера
smtp_password = YourLinksPassWordHere

# механизм аутентификации SMTP
smtp_authentication = login

# включить шифрование TLS для соединений SMTP
smtp_enable_start_tls = true

# режим проверки сертификатов SMTP-сервера
# для отключения установите значение 'none'
smtp_openssl_verify_mode =

# принудительное использование неявного TLS согласно RFC 8314 3.3
smtp_force_tls = false

# загрузить MiniProfiler в продакшене для использования разработчиками
load_mini_profiler = false

# имя хоста, на котором работает форум
hostname = "forum.yourlinks.com"