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