如何在Discourse引导过程中解决Pups执行错误

好的,我已经修复了 web_only 和 redis 的分离。错误信息现在是:

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 981 e
xit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "tag"=>"migrate", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migra
te'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
801049b69a89d38b1ae5c299d356fc5f8dc6a8f518b1260c2dde05e0b6081556

但也许是我这边理解有误/知识不足:

数据库应该是外部的,位于另一个带有 postgresql 数据库的 lxc 容器中。数据库用户和数据库都存在,但在 web_only 首次引导之前,数据库是空的。脚本是在首次构建时在远程系统上自行创建数据库吗?还是我必须先创建数据库容器,然后手动将它的默认模式和数据导出到外部的 postgresql 守护进程?

整体设置的可视化

forum2 Setup.excalidraw