Интересно, что я столкнулся с той же или схожей ошибкой. Я работаю на Discourse 2.9.0.beta2 и попытался обновиться до ß3. Я отключил все плагины, кроме docker_manager, для команды ./launcher rebuild app. Использую внешнюю базу данных PostgreSQL версии:
$ psql --version
psql (PostgreSQL) 14.1 (Ubuntu 14.1-1.pgdg18.04+1)
После сбоя я могу перезапустить контейнер через ./launcher restart app, но при этом ответы возвращают ошибку 500.
Финальная ошибка при пересборке/обновлении:
FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 658 exit 1>
Location of failure: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
Фактические значимые ошибки выше можно найти здесь: https://p153.p0.n0.cdn.getcloudapp.com/items/jkuvPekN/feb38236-3b84-410e-8fac-d1864d02ba69.txt?v=eb1d15e029cb07a73300d8ec07318876
Мне трудно поверить, что это действительно проблема с правами доступа, и я колеблюсь давать базе данных Discourse права суперпользователя/root для pgsql.
Есть ли у кого-нибудь дополнительные мысли о том, что может происходить здесь с таким недавним сбоем?