Восстановление приложения: странная ошибка

При выполнении ежемесячного обслуживания и обновлений Discourse я обнаружил следующие ошибки во время пересборки:

I, [2025-03-22T15:54:02.806441 #1]  INFO -- : > cd /var/www/discourse && sudo -E -u discourse bundle exec rake s3:upload_assets
`/root` не доступен для записи.

и

I, [2025-03-22T15:54:12.239681 #1]  INFO -- : > cd /var/www/discourse && sudo -E -u discourse bundle exec rake s3:expire_missing_assets
`/root` не доступен для записи.

После пересборки:

  1. Я могу создавать сообщения и загружать новые изображения в S3 без каких-либо проблем.
  2. Я смог войти в приложение и выполнить команды rake без ошибок.

Есть ли какие-либо идеи или предложения?

Вы используете sudo и находитесь в режиме root, верно?

Все попытки были предприняты от имени «root» в рамках одной сессии.

Но запускался ли процесс от имени root?

Вот почему я задал этот вопрос. С многочисленными пересборками такого раньше никогда не случалось.

Я в той же ситуации.

В моём случае проблема в том, что db:migrate выполняется некорректно.

Пробовал разные серверы бэкенда, но везде одна и та же ошибка.

Сначала я подумал, что это связано с тем, что PostgreSQL не поддерживает версии 16 или 17, поэтому попытался запустить с помощью следующих хуков.

Но это тоже не помогло.

hooks:
  after_code:
    - exec:
        cd: /var/www/discourse
        cmd:
          - export HOME=/var/www/discourse
          - export BUNDLE_USER_HOME=/var/www/discourse/.bundle
          - apt-get update
          - apt-get remove -y postgresql-client-15
          - apt-get install -y postgresql-client-16

После удаления почти всех дополнительных элементов app.yml я столкнулся с ошибкой, связанной с PG vector.

После установки расширения postgre vector процесс сборки завершился успешно, хотя я всё ещё вижу сообщение «/root не доступен для записи».