Надеюсь, у всех вас всё хорошо! У меня есть вопрос по Discourse: возможно ли разместить Discourse на собственном сервере? Мне очень интересна эта платформа, и я бы хотел узнать, есть ли у кого-то здесь опыт работы с ней. Есть ли какие-то особые требования или советы, которые стоит учитывать?
Это не поддерживается официально, однако ведутся усилия по синхронизации с основной веткой Discourse. Вы можете поискать Docker Compose здесь или обратиться к этим двум вариантам:
Потому что базовый образ сам по себе ничего не делает. В нём нужно скомпилировать Discourse, а затем запустить его. Это делается путём выполнения скрипта ./launcherвне образа. Поэтому сначала попробуйте установить его официальным способом, а уже потом размышляйте о вариантах.
Процедура установки Discourse не очень распространена, но за годы работы мне очень понравился этот подход по одной причине, которую вы оцените только после того, как поработаете администратором какое-то время. А именно — возможность обновлять его после каждого коммита в исходный код. Это невероятно. Вы сообщаете об ошибке (bug), и уже через час проблема может быть решена командой или сообществом: запускаются автоматические тесты, коммит сливается и становится доступным. И вы можете сразу же обновиться, потому что перекомпилируете свой Discourse на основе последней версии исходного кода.
Поэтому не существует образа, в котором была бы заранее скомпилирована какая-то конкретная версия. Вы получаете «пустой» образ и компилируете свою версию с нужной точки, используя необходимый набор плагинов. И это всё ещё работает!
Такой гибкости вы не найдёте больше нигде.
Так что я не уверен, но если вы хотите создать файл docker compose, вам нужно будет воспроизвести процедуру скрипта ./launcher внутри этого файла, чтобы скомпилировать отдельный образ, который затем можно просто подключить. Однако встроенный механизм обновления в таком случае не сработает. Вам придётся самостоятельно собирать новую версию.
Спасибо за вашу помощь, ребята. Благодаря вам новичкам вроде меня легко работать с Discourse!
Да, но прежде чем я предоставлю Discourse своему клубу, я хотел бы запустить его на localhost и провести несколько тестов, чтобы лучше разобраться в административном интерфейсе и командной строке Discourse. Если возникнут ошибки, я смогу их исправить. Для «поддерживаемой» версии требуется запись DNS и порты 443 и 80, что в моём случае излишне — по крайней мере, так мне кажется.
Не знает ли кто-нибудь, как обойти это ограничение и запустить Discourse на localhost?
Или так. Хотя я понял, что Максу интересно узнать, как это работает в продакшене, но протестировать локально перед покупкой хостинга. Для этого более подходящим будет настройка Docker. Чтобы фактически исправить ошибки, правильным выбором является настройка разработки.