Вам нужен форум на ваш сайт? Или чат? Или вы хотите управлять рассылками? Вам подойдёт платформа Discourse. Это бесплатный движок с открытым исходным кодом, который используется для коммуникации и совместной работы. Запустить свой форум на Discourse – это не сложно. Далее по тексту – пошаговое руководство, рассказывающее о том, как установить Discourse на Ubuntu Server 20.04 при помощи приложения Docker.
Если для установки Discourse вы используете чистую операционную систему Ubuntu Server 20.04, вам необходимо выполнить некоторые первоначальные настройки ОС вашего сервера. А именно, добавьте в систему свою учётную запись с правами на использование sudo. Также, настройте интерфейс брандмауэра UFW для возможности подключения к вашему VPS через OpenSSH. И ещё вам нужно развернуть в вашей системе программное обеспечение для работы с контейнерами Docker. После завершения подготовительных работ можно переходить к установке Discourse.
Установка Discourse
На первом шаге по установке Discourse необходимо загрузить образ Docker Discourse. Для этого создайте директорию /var/discourse
и запустите клонирование образа в созданный каталог:
sudo mkdir /var/discourse
sudo git clone https://github.com/discourse/discourse_docker.git /var/discourse

Далее, перейдя в директорию /var/discourse
запустите установочный скрипт:
cd /var/discourse
sudo ./discourse-setup
В ходе установки необходимо указать системе:
- имя вашего хоста, на котором вы планируете развернуть форум, например,
forum.my-domain.host
(Этот ресурс должен быть доступен для вашего VPS, или, другими словами, должна быть создана запись типа А (A-record) на вашем DNS, соответствующая вашему домену, и указывающая на его IP-адрес.); - адрес электронной почты, который понадобится для администратора Discourse (вы можете использовать любой доступный E-mail, не обязательно привязанный к вашему домену);
- адрес SMTP сервера, имя пользователя на SMTP сервере, номер порта, пароль пользователя;
- а также, опционально – E-mail для предупреждений от Let’s Encrypt и лицензионный ключ Maxmind (можно пропустить нажимая
Enter
).

После подтверждения введённых значений скрипт запустит установку Discourse.
В результате своей работы установщик создаст конфигурационный файл /containers/app.yml
. Вы можете вносить в этот файл какие-либо коррективы при помощи текстового редактора в случае, если у вас появится необходимость изменить настройки Discourse. Для вступления изменений в силу используйте инструкцию:
$ sudo ./launcher rebuild app
Настройка Discourse
Теперь, когда установка завершена, откройте в браузере страницу вашего сайта, на который вы установили Discourse. Если, инсталляция прошла без ошибок, откроется страница с сообщением об успешной установке:

На открывшейся странице перейдите по ссылке регистрации:

Заполните форму, ещё раз нажмите кнопку Register и подтвердите ваш E-mail.
После завершения регистрации система запустит визард по настройке конфигурации Discourse. Работу мастера можно пропустить отложив на более позднее время нажатием кнопки Maybe Later.

После завершения работы мастера вы должны увидеть начальную страницу со списком некоторых тем и разделом READ ME FIRST: Admin Quick Start Guide.

Вместо заключения
В своём руководстве по установке разработчики Discourse настоятельно рекомендуют периодически проверять обновления безопасности операционной системы вашего VPS. В Ubuntu Server 20.04 это можно делать запуском команды:
$ sudo dpkg-reconfigure -plow unattended-upgrades
Также, официальная документация содержит рекомендацию использовать более сложные пароли для пользователя root. Настроить сложность парольной политики можно при помощи пакета libpam-cracklib
:
$ sudo apt-get install libpam-cracklib
И ещё в Ubuntu есть возможность блокировать на 10 минут IP-адреса, с которых совершено более трёх попыток ввода пароля:
$ sudo apt-get install fail2ban
На этом установка и первоначальная настройка закончены. Теперь у вас есть возможность управлять вашим форумом или чатом, построенном на программной платформе Discourse.