搭建多站点开发环境

在开发环境中以多站点模式运行 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

不过,通常情况下,未设置 RAILS_DB 时运行 Rake 任务将针对默认站点。

要访问该站点,请启动开发服务器:

bin/dev

您现在可能可以通过 http://alternate.localhost:3000 查看新站点。如果无法访问,您可能需要将 alternate.localhost 添加到您的 /etc/hosts 文件或等效配置中。


本文档受版本控制——请在 GitHub 上提出修改建议。

12 个赞