Вы можете сразу перейти к моему пошаговому руководству здесь…
На моем выделенном сервере (Hetzner) я установил свежий экземпляр Discourse (и на данный момент это единственное, что есть на сервере).
Теперь я хочу использовать CloudPanel в качестве обратного прокси, чтобы также иметь возможность размещать на этом сервере блоги Ghost и сайты WordPress для некоторых моих клиентов.
Изучив это руководство и другие сообщения ниже, я понял, что это возможно.
Однако мне сложно справиться с кривой обучения в области обратных прокси.
Я легко могу устанавливать и управлять своими сайтами через CloudPanel.
Но я не совсем понимаю правильный порядок или процедуру настройки совместной работы CloudPanel и Discourse.
Я хотел бы задокументировать эту процедуру в данном сообщении.
Может ли кто-нибудь провести меня через этот процесс?
Сначала выполните один из этих руководств, чтобы перенести Discourse на другой порт, удалить шаблоны SSL и Let’s Encrypt, а затем пересобрать. После этого настройте ваш обратный прокси на использование этого порта.
Discourse не использовал порты 80/443, так как конфликт приведёт к сбою вашего обратного прокси.
Discourse не использовал SSL, но при этом порт 80 был перенаправлен на порт, который обратный прокси использует для бэкенда.
Таким образом, фраза «это не имеет значения» означает, что Discourse должен быть настроен как бэкенд до запуска обратного прокси, и в этот момент он будет недоступен в течение некоторого времени.
Это не инструкция для простаков. Вам нужно будет понять, как работает обратный прокси-сервер, и как вручную настроить Discourse. Это не будет ни простым, ни интуитивно понятным.
Достаточно сложно поддерживать стандартную установку для новичков. Множество часов было потрачено на то, чтобы эти инструкции работали для людей, которые ничего не знают об администрировании систем.
Множество часов было потрачено на то, чтобы эти инструкции работали для людей, не имеющих никаких знаний в области системного администрирования. @pfaffman Надеюсь, мне удастся сократить эти затраты времени для вас в будущем!
Хорошо, застрял на (мелкой, как мне кажется) вещи…
Чтобы создать второй экземпляр Discourse, я создал и отредактировал app2.yml и server_name.conf для второго Discourse, изменив DISCOURSE_HOSTNAME и server_name.
Но затем… как собрать app2? Я попробовал:
service nginx restart
./launcher stop app
./launcher rebuild app2
и
./discourse-setup (для установки первого экземпляра я использовал ./discourse setup, затем вернулся и отредактировал app.yml, и это сработало для первого экземпляра.)
Эта процедура привела к появлению Discourse по второму URL, но, похоже, он получает данные из первого экземпляра.
Что-то я не понимаю. Какой правильный способ развернуть второй сайт на втором домене?
Вам нужно изменить каталог, указанный как /var/discourse/standalone, на что-то другое (например, standalone2?).
Возможно, стоит использовать конфигурацию с двумя контейнерами, чтобы запускать только одну копию PostgreSQL (полагаю, в теме Конфигурация для нескольких сайтов с Docker есть подсказки), но если у вас много оперативной памяти, это может быть не так важно.
Я ничего об этом не знаю, но если вы и другие считаете, что ваша инструкция надёжна, создавайте новую тему с тегами #documentation:sysadminhow-toadvanced-setup и любыми другими, которые, по вашему мнению, подходят
(прежде чем ваш ответ автоматически удалится через месяц )