[Гайд] Развертывание Discourse на AWS EC2

Discourse — это программное обеспечение для форумов с открытым исходным кодом, которое позволяет запустить форум с минимальными усилиями, если вы знаете, как его разместить. Официальное руководство описывает установку на DigitalOcean, но для работы на AWS EC2 потребуется несколько дополнительных настроек. Сообщество просило официальное руководство по установке на AWS EC2, однако команда Discourse не имела соответствующего опыта, так как размещает сервис на физических серверах под управлением Linux.

Эта публикация призвана восполнить этот пробел, показав, как разместить Discourse на AWS EC2. К счастью, единственное отличие между размещением на AWS EC2 и DigitalOcean заключается в самом первом этапе «Создание нового облачного сервера», поэтому я остановлюсь только на нём.

Я предполагаю, что вы умеете запускать экземпляр AWS EC2. Если нет, обратитесь к отличным видео на YouTube. Помимо стандартного процесса, есть несколько важных моментов.

Эластичный IP-адрес

Настройте эластичный IP-адрес, так как он более статичен, чем публичные IP-адреса EC2. Последние меняются каждый раз при остановке и запуске экземпляра. Статический IP-адрес снижает вероятность ошибок при разрешении DNS.

Место на диске

Контейнеру Docker требуется значительное место на диске, поскольку он запускает Redis и PostgreSQL. Блока EBS (Elastic Block Store) по умолчанию объёмом 8 ГиБ недостаточно. Я настроил блок объёмом 30 ГиБ.

Если вы уже настроили блок по умолчанию объёмом 8 ГиБ, не переживайте: просто измените его в консоли AWS, затем остановите и запустите экземпляр снова. Теперь вы понимаете, зачем нужен эластичный IP-адрес — он не изменится после перезапуска, и разрешение DNS не пострадает!

Правила входящего трафика

Убедитесь, что в правилах входящего трафика открыты порты 80 и 443 для источника 0.0.0.0/0. Для простоты я оставляю их открытыми для всех, но вы можете настроить более строгие ограничения.

Заключение

Если у вас остались вопросы по размещению Discourse на AWS EC2, не стесняйтесь обратиться ко мне @yiksanchan на https://meta.discourse.org/, и я постараюсь помочь.

Удачной работы с Discourse!

7 лайков