升级失败管理控制台

当我使用管理员控制台时,在一切正常工作之前,我收到了此消息。

Web UI 上的升级将被禁用,直到您运行最新的映像。

要执行此操作,请使用 SSH 登录到您的服务器并运行:

    cd /var/discourse
    git pull
    ./launcher rebuild app

当我按照简单的说明操作时,我收到了此错误消息:

FAILED

Pups::ExecError: cd /var/www/discourse && su discourse -c ‘bundle exec rake themes:update assets:precompile’ failed with return #<Process::Status: pid 518 exit 1>
失败位置:/pups/lib/pups/exec_command.rb:112:in `spawn’
exec failed with the params {“cd”=>“$home”, “hook”=>“assets_precompile”, “cmd”=>[“su discourse -c ‘bundle exec rake themes:update assets:precompile’”]}
e3eb2969bd230aeaf5a9405901e7059aa898c61b41eec2156960a6bd2e08dd33
** FAILED TO BOOTSTRAP ** 请向上滚动并查找更早的错误消息,可能不止一个。
./discourse-doctor 可能有助于诊断问题。

当我执行 ./discourse-doctor 时,它开始重建,我仍然遇到管理员升级控制台的相同问题。

错误在日志的更上方。

你能检查或发布日志文件吗?

不确定应该向上滚动多远,这里还有更多内容

守护进程返回错误:在端点 app (1e145a00615964e521bbfcec584bb3adf14171590767841a1eaa58e04b064615) 上编程外部连接失败:启动用户区代理时出错:监听 tcp4 0.0.0.0:443:bind:地址已在使用中
错误:无法启动容器:app
无法重新启动容器。

这是附加的日志文件
discourse-debug.txt (167.5 KB)

看起来您运行了其他 Web 服务器。您可以检查是否有某个进程占用了端口,或者检查 Apache 或 Nginx 是否正在运行。

看起来您的某个主题存在错误。您可以尝试运行

 ./launcher start app

来重启服务器(如果 443 端口被占用则无法成功),然后尝试移除主题,在升级后再重新添加它们。

这是唯一两个正在监听 443 端口的协议

root@geeksove:/var/discourse# sudo lsof -i:443
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
docker-pr 44758 root 4u IPv4 926438 0t0 TCP *:https (LISTEN)
docker-pr 44764 root 4u IPv6 926445 0t0 TCP *:https (LISTEN)
root@geeksove:/var/discourse#

那么这是什么意思?

    docker ps

root@geeksove:/var/discourse# docker ps
容器ID 镜像 命令 创建于 状态 端口 名称
8bf07ae47872 local_discourse/app “/sbin/boot” 7周前 已启动2小时 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp app

感谢您的帮助

Keith

Discourse 已经在运行。

是的,并且工作正常,除了升级模块,它一直回到原始消息–

我认为问题出在某个主题组件上。你需要将其移除,进行升级,然后再重新添加主题,直到找到问题所在。或者,我猜是这样。