Что я бы сделал, так это зашёл в контейнер, установил vim, отредактировал файл конфигурации postgres, чтобы увеличить параметр, на который он жалуется (перезапустите с помощью “sv restart postgres”) и восстановился из командной строки.
./launcher enter app
Путь: /etc/postgresql/13/main/postgresql.conf
Число 13 в пути — это номер версии, и наша версия может отличаться. Перейдите в папку /etc/postgresql, чтобы посмотреть её.
Позже я попробую восстановить через командную строку, когда лучше разберусь, как передавать резервную копию через командную строку. Пока что я получаю ошибку “permission denied (publickey)”. Но это не проблема Discourse.
После выполнения команды вам будет предложено ввести доменное имя. Вам нужно нажать Ctrl+C, чтобы отменить операцию, так как у вас уже есть резервная копия app.yml.
6. Перейдите в папку конфигурации Discourse:
1. cd /var/discourse/containers/ # вход в папку конфигурации
2. rm app.yml # удаление файла конфигурации, созданного по умолчанию
3. загрузите вашу резервную копию app.yml в эту папку
4. cd ... # возврат в папку Discourse
5. . /launcher rebuild app # пересборка Discourse
После пересборки Discourse начните процесс восстановления:
1. mkdir /var/discourse/shared/standalone/backups/default/ # создание папки для резервных копий
2. cd /var/discourse/shared/standalone/backups/default/ # переход в папку и загрузка файлов резервной копии вашего сайта
3. cd /var/discourse/ # возврат в папку Discourse
4. . /launcher enter app # вход в контейнер Discourse
5. discourse enable_restore # включение функции восстановления Discourse
6. discourse restore ваш-сайт-резервная-копия.tar.gz # запуск восстановления резервной копии, заменив ваш-сайт-резервная-копия.tar.gz на имя файла резервной копии вашего сайта
Путь указан верно, я нашёл строку для редактирования. Установил лимит 80 МБ и добавил перезапуск приложения — всё отлично сработало. Я очень доволен. Большое спасибо, Sheng и @pfaffman.