Crell
(Larry Garfield)
2020 年6 月 10 日 19:35
1
大家好。我进行的是全新 2.4.5 安装,而非升级。当我尝试运行任何与数据库交互的 Rake 命令时,会收到以下错误:
rake aborted!
PG::ConnectionBad: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
通过谷歌搜索,这通常意味着 PostgreSQL 本身已崩溃,需要重启。但这里并非如此;PostgreSQL 运行在一个独立的容器中,我可以通过网络手动连接它,一切正常。
值得注意的是,它正尝试通过本地套接字进行连接。然而,config/discourse.conf 明确列出了要通过主机和端口连接的 PostgreSQL 实例,并提供了用户名和密码。(这些正是我手动连接时使用的凭据。)
这使我怀疑……discourse.conf 根本没有被读取?因此它回退到了通过 Unix 套接字连接 localhost,而这当然无法工作,因为本地并没有数据库?这是我目前的最佳猜测,但我不确定是否正确,也不知道如果确实如此该如何修复。
有人能指点我一下正确的方向吗?
Falco
(Falco)
2020 年6 月 10 日 19:51
2
你为什么要查看这个文件?这是使用 Discourse 官方标准安装 进行的正式环境部署吗?
1 个赞
pfaffman
(Jay Pfaffman)
2020 年6 月 10 日 19:53
3
Crell:
它正尝试通过本地套接字连接
如果您执行的是标准安装,是否出于某种原因包含了 web.socketed.template.yml?
Crell
(Larry Garfield)
2020 年6 月 10 日 20:04
4
不,这不是 Docker 环境。(不同的主机。)这是对该标签的 git 克隆,并做了一些修改,例如添加数据库凭据并将 force_https 设置为 true。
@pfaffman 未找到 web.socketed.template.yml 文件。
令人困惑的是,我之前让这部分的配置可以正常工作。后来我将其移动到了子目录中(并更新了 Web 服务器配置以指向该目录),现在它无法与数据库通信。我不明白这两者之间是如何相互影响的。
(从技术上讲,这是为另一台不使用 Docker 的主机构建的过程。我正在尝试设置 Discourse 的一键安装模板,但这……证明相当困难。)
pfaffman
(Jay Pfaffman)
2020 年6 月 10 日 20:06
5
没错。这需要你对 Discourse 有相当具体的了解,而你可能并不具备;同时也需要对本地环境有特定知识,而这里的任何人都没有。祝你好运。
我标记了 #unsupported-install。
3 个赞
是的,很遗憾,为了我们组织的正常运转,我们所能提供的支持是有限的,而这种情况确实听起来安装过程相当复杂。
4 个赞