Configure um ambiente de desenvolvimento multisite

É possível executar o Discourse no modo multisite em desenvolvimento. Um servidor multisite utiliza um banco de dados e um nome de host diferentes para cada site que ele atende. Isso é útil se você estiver desenvolvendo um recurso ou um plugin que deve ser compatível com multisite.

Tudo o que você precisa fazer é adicionar um arquivo config/multisite.yml apropriado. Por exemplo:

---
alternate:
  adapter: postgresql
  database: discourse_alternate
  host_names:
    - alternate.localhost

Para executar tarefas rake nesses sites adicionais, basta adicionar a variável de ambiente RAILS_DB com o nome do site que você está mirando:

RAILS_DB=alternate rake db:create
RAILS_DB=alternate rake db:migrate

Algumas tarefas rake são especiais: quando RAILS_DB não é especificado em desenvolvimento, elas são executadas em todos os sites:

rake db:create
rake db:migrate

Geralmente, no entanto, executar tarefas rake sem definir RAILS_DB mirará o site padrão.

Para acessar o site, inicie o servidor de desenvolvimento:

bin/dev

Agora você poderá visualizar seu novo site em http://alternate.localhost:3000. Se não conseguir, talvez seja necessário adicionar alternate.localhost ao seu arquivo /etc/hosts ou equivalente.


Este documento está sob controle de versão — sugira alterações no GitHub.

12 curtidas