如何从数据库获取密码?

您好!在安装 Discourse (Docker) 时,我看不到数据库设置的密码。
我需要它,因为我想使用远程连接到数据库,并且我认为 Discourse 为所有 Docker 镜像设置了一个密码。

1 个赞

你好 moschino :wave:,

我不太懂技术方面的东西,但我想当你进入容器后,可以使用用户名 discourse 连接到数据库,无需密码。

如果这对你有帮助,请告诉我:

./launcher enter app
su - discourse
psql
1 个赞

你为什么想这样做?通常数据浏览器是更好的方法。

默认情况下,数据库不会暴露给端口。

如果你确实想将数据库暴露给外界,请使用双容器设置重新安装(discourse-setup --two-container)。最简单的做法是在新服务器上进行,但也有关于如何迁移的讨论。

这几乎肯定是个坏主意。请使用数据浏览器或 API。

7 个赞

config/database.yml 的良好内容是什么?可以分享一个生产环境的示例吗?

我没有在那里看到数据库,Ruby 在执行某些任务(例如导出 override_translations)时失败。我怀疑我的安装有问题。

目前,我只在 config/database.yml 中看到开发和测试数据库,我想将其修复为当前正在工作的数据库架构 :slight_smile:

我可以在容器化的 Discourse 实例中使用 psql 读取生产数据库。

您是如何安装 discourse 的?

您想解决什么问题?

有什么证据表明有问题?

您是否看到
rake db:migrate

会做什么?

数据库名称在环境变量中。

1 个赞

我无法导出 es_XX 自定义语言,我怀疑这可能与错误的配置有关,但随后我看到生产密码和主机似乎没有在 yml 文件中声明。

我曾尝试修改 LANG 和 DISCOURSE_DEFAULT_LOCALE,但这应该不够。

目前我设置了 LANG = en_US.UTF-8DISCOURSE_DEFAULT_LOCALE = es(这允许我通过 trust_level on custom-locale issue 的解决方法)。

这似乎不是标准安装。

是的,但是我认为我可能混淆了开发环境和生产环境,或者其他什么地方出了问题。

也许我的自定义区域设置字符串中的表情符号有问题,我会检查一下。