Краткое обновление, на случай, если это кому-то пригодится — мы успешно развернули Discourse в Google Cloud!
Он работает по адресу https://community.gitpod.io, и нам пока всё очень нравится.
Детали
В основном я следовал инструкции INSTALL-cloud и создал виртуальную машину GCE типа g1-small (1 vCPU, 1.7 ГБ памяти) с дополнительным SSD на 20 ГБ. (Примечание: изначально я рассматривал VM типа n1-standard-1, но для Discourse это показалось излишним).
Что касается выбора региона для VM, то, основываясь на этой статье, мы определили, что gce-us-east4 — лучший вариант, так как большинство пользователей Gitpod находятся в Северной Америке и Европе, но также их много в Азии, поэтому задержки там не должны быть слишком большими.
Для настройки почты мы очень хотели использовать наш аккаунт Google Apps. Мы пытались настроить SMTP-ретранслятор Gmail, но даже после тройной проверки правильности использования всех необходимых протоколов, разрешения их через брандмауэр GCP и добавления нужных IP-адресов в белый список, письма так и не отправлялись. Инструмент Discourse Doctor очень помог, но и он не справился. В итоге мы сдались и использовали SendGrid, так как всё равно хотели протестировать его для других задач. Настройка была очень простой, и всё заработало с первой попытки. К сведению, трафик нашего Discourse растёт, но пока легко укладывается в бесплатный тариф SendGrid (100 писем в день).
Затем мы настроили вход через GitHub OAuth (так же, как для gitpod.io, для удобства) и установили несколько полезных плагинов:
- discourse-solved — для отметки вопросов как решённых
- discourse-chat-integration — для уведомлений о новых темах в нашем внутреннем канале поддержки Slack
Также, к слову, я написал быстрый и неидеальный скрипт на Node.js spectrum-to-discourse.js для переноса старых тем из Spectrum в Discourse. Качество не на 100% оптимальное, и в скрипте, возможно, осталось несколько ошибок, но этого хватило, чтобы наполнить наш новый Discourse. Сейчас мы вручную проверяем, исправляем и улучшаем старые темы, когда видим, что они становятся популярными.
Надеюсь, эта информация кому-нибудь пригодится в будущем! ![]()