Запуск Discourse в режиме мультисайта в среде разработки возможен. Сервер мультисайта использует отдельную базу данных и имя хоста для каждого обслуживаемого сайта. Это полезно, если вы разрабатываете функцию или плагин, который должен быть совместим с мультисайтовой архитектурой.
Вам достаточно добавить соответствующий файл config/multisite.yml. Например:
---
alternate:
adapter: postgresql
database: discourse_alternate
host_names:
- alternate.localhost
Чтобы запускать задачи Rake для дополнительных сайтов, просто установите переменную окружения RAILS_DB с именем целевого сайта:
RAILS_DB=alternate rake db:create
RAILS_DB=alternate rake db:migrate
Некоторые задачи Rake являются специальными: если в среде разработки не указана переменная RAILS_DB, они выполняются для всех сайтов:
rake db:create
rake db:migrate
В целом, однако, запуск задач Rake без установленной переменной RAILS_DB будет направлен на сайт по умолчанию.
Чтобы получить доступ к сайту, запустите сервер разработки:
bin/dev
Теперь вы должны иметь возможность открыть ваш новый сайт по адресу http://alternate.localhost:3000. Если это не работает, возможно, вам потребуется добавить alternate.localhost в файл /etc/hosts или его аналог.
Этот документ находится под контролем версий — предлагайте изменения на GitHub.