alank
(Andrew Lank)
1
在我的开发和测试中,我运行了一个 Discourse 实例(来自 Bitnami 的 Docker Discourse),它满足了我们对与 Discourse 通信的 API 服务的大部分 API 测试需求。但现在我需要使用 /u/search/users.json?term=and 来测试搜索功能,并希望在此本地 Discourse 测试服务中预置一些用户。默认情况下,它只有一个名为“user”的用户。
API 文档似乎没有说明如何通过 API 调用来实现这一点,这本来应该很简单。我是否遗漏了某些内容,可以简单地创建多个用户用于测试?
另外需要说明的是,我已经手动向我们的在线付费 Discourse 服务发送了请求,并且可以正常工作。但我希望在开发和测试实例上进行测试,为此我需要更多的测试用户。
谢谢。
fzngagan
(Faizaan Gagan)
2
Bitnami 是否允许您访问 Discourse 设置文件夹的命令行?
如果是,请查看以下内容:
alank
(Andrew Lank)
3
谢谢 @fzngagan,不幸的是,Bitnami 的 Discourse 没有安装 Launcher。enter app 具体是做什么的?我本以为可以直接运行 bundle exec rake admin:create,但返回了以下错误:
rake aborted!
LoadError: cannot load such file -- byebug
/opt/bitnami/discourse/vendor/bundle/ruby/2.5.0/gems/bootsnap-1.3.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:82:in `require'
/opt/bitnami/discourse/config/application.rb:37:in `<top (required)>'
/opt/bitnami/discourse/Rakefile:5:in `require'
/opt/bitnami/discourse/Rakefile:5:in `<top (required)>'
/opt/bitnami/discourse/vendor/bundle/ruby/2.5.0/gems/rake-12.3.2/exe/rake:27:in `<top (required)>'
/opt/bitnami/ruby/bin/bundle:23:in `load'
/opt/bitnami/ruby/bin/bundle:23:in `<main>'
(See full trace by running task with --trace)
这看起来很有希望,但我又回到了原点。
csmu
(Keith John Hutchison - Ceiteach Seán Mac Úistin)
4
您能否使用官方支持的 Discourse 安装方式?
alank
(Andrew Lank)
5
我们的开发环境需要多项服务,因此我们倾向于通过一条命令 docker-compose up 启动所有服务(包括 Discourse 及其所有模块),并定义和控制各服务之间的网络连接,同时也能通过该命令将一切 down 下。这样可避免在新安装的开发环境中额外添加 launcher 的步骤。
alank
(Andrew Lank)
6
好的,已解决。对于使用 Bitnami Discourse Docker Compose(Docker)安装进行开发的用户,以下是我所用的步骤(参考了 @fzngagan 指出的内容):
> docker exec -it <your container name> /bin/bash
进入容器后…
> export RAILS_ENV=production
我不确定这对日志记录有何影响,也许我应该尝试 =dev 或 development……这点大家可以反馈一下,但我现在时间紧迫,抱歉
> bundle exec rake admin:create
回答相关问题,密码必须符合 Discourse 的规则,否则脚本会重新开始
注意:无需使用 ./Launcher,正如 @fzngagan 在上述链接中所述。
遗憾的是,如果 Discourse 设置为开发(Dev)或测试(Test)环境,此功能无法通过 API 使用,否则将大大简化希望使用 API 服务的测试和开发工作。不过,我暂时会在 Docker 实例中通过命令行来完成。
alank
(Andrew Lank)
7
额外说明:> export RAILS_ENV=production(设置为 production)似乎对 Discourse 的日志信息没有影响,不过我在那次更改后并未重启 docker-compose,因此可能需要删除该环境变量,或将其设置为 development、dev 或其他值。