帮助!firewall/permissions 和 postgre 的问题?

你好!

这是我第一次正式发帖,因为我通常只是潜水寻找答案,但这个问题真的让我束手无策。我最近通过 SSH 稍微更新了一下我们的 Discourse 论坛,现在论坛无法连接互联网并解析主机名。Postgres 出现了一些我不太理解的问题——在 PostgreSQL 12 update 这篇帖子的 FAQ 中看到了“未正常关闭”的错误提示。

另外,似乎还有一个 Docker(可能是?)的问题,导致我无法按建议启动应用并运行。

这是我遇到的 Postgres 错误:

源集群未正常关闭。

失败,正在退出

-------------------------------------------------------------------------------------

POSTGRES 升级失败

请访问 https://meta.discourse.org/t/postgresql-13-update/172563 获取支持。

在此期间,您可以运行 ./launcher start app 来重启您的应用。

失败

--------------------

Pups::ExecError: /root/upgrade_postgres 执行失败,返回状态为 #<Process::Status: pid 47 exit 1>

失败位置:/pups/lib/pups/exec_command.rb:112:in `spawn'

执行失败,参数为 "/root/upgrade_postgres"

49554f9dc370e42c8989a7e23a8cb30fb06c5857aac7b8a95acb1a0cc21cefff

** 启动失败 ** 请向上滚动查看更早的错误信息,可能不止一条。

./discourse-doctor 可能有助于诊断问题。

当我尝试按建议启动应用时,出现以下错误:

无法在本地找到镜像 'local_discourse/app:latest'

docker: 来自守护进程的错误响应:拉取 local_discourse/app 的访问被拒绝,仓库不存在或可能需要 'docker login':拒绝:请求的资源访问被拒绝。

请查看 'docker run --help'。

有什么办法可以解决这个问题吗?我觉得没有运行的应用就无法修复 Postgres,而我也搞不清楚如何解决 Docker/守护进程/防火墙的问题。

请查看 PostgreSQL 13 更新

您可能需要多次重新构建。有时人们只是不知道需要再次重新构建,而问题就解决了。有时(但并不常见)会遇到更复杂的情况。

最坏的情况下,您可以执行全新安装并恢复备份。

感谢您的回复!我已经多次尝试重建,但依然以相同的错误失败。说实话,我是从别人那里接手这个项目的,所以目前有点摸不着头脑。

我尝试通过 SSH 使用 ./launcher enter app 进行备份,但得到了另一个错误:

root@newforum:/var/discourse# ./launcher enter app
Error: No such container: app

我肯定没有删除它,因为我不知道如何操作。有什么建议吗?

1 个赞

我遇到过一次升级中出现权限问题的情况。我记不太清具体是怎么解决的。不过,或许你可以先重命名备份的 PostgreSQL 目录,重新启动它,再做一次备份,然后从全新安装开始并恢复数据。

1 个赞