Ошибка при восстановлении базы данных

Я попытался восстановить базу данных в первый раз после начала использования Discourse, но получил такую ошибку:

Кто-нибудь может помочь? Спасибо.

@VANHUSSEN

Вы пробовали восстановить из командной строки внутри контейнера?

Пожалуйста, не публикуйте одну и ту же проблему несколько раз.

Да, я загрузил файл резервной копии в директорию /var/www/discourse/public/backups/default/ на новом сервере.

Перейдите в директорию /var/www/discourse/ на новом сервере.

cd /var/www/discourse/

Установите зависимости.

sudo gem install thor

Перейдите в Панель администратора Discourse → НастройкиРезервные копии и установите флажок Разрешить восстановление.

Затем выполните следующую команду для восстановления сайта из резервной копии.

RAILS_ENV=production script/discourse restore file-name-of-the-backup-file.tar.gz

После завершения восстановления перезапустите Discourse.

sudo systemctl restart discourse discourse-sidekiq

Затем обновите веб-страницу Discourse.
Однако на шаге:

sudo gem install thor

Я получил ошибку. Почему?

Извините, Джефф Аткинс, за повторение одной и той же проблемы в посте несколько раз.

Привет, @VANHUSSEN

Судя по тем немногим сообщениям об ошибке, которые вы опубликовали, у вас проблема с версией Ruby, которую вы используете.

По крайней мере, именно это указывает сообщение об ошибке из вашего первого поста.

Пытались ли вы пересобрать ваш контейнер, а затем запустить процесс восстановления?

Я попробовал эту команду:
Удалить ruby2.5-dev.

sudo apt remove ruby2.5-dev

Установить ruby2.6-dev из PPA.

sudo apt install software-properties-common
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt install ruby2.6-dev

Но ошибка всё ещё появляется. Пожалуйста, помогите.

Привет, @VANHUSSEN

Возможно, будет лучше, если вы просто пересоберёте стандартный поддерживаемый контейнер, вместо использования:

./launcher rebuild app

При условии, конечно, что ваш контейнер Discourse указан в app.yml.

Я установил Discourse без использования Docker.

xen@xen:~$ lsb_release -a

Модули LSB недоступны.
Идентификатор дистрибутива: Ubuntu
Описание:    Ubuntu 18.04.4 LTS
Релиз:        18.04
Кодовое имя:       bionic

Я настоятельно рекомендую использовать Docker для установки, если вы разворачиваете продакшн-окружение Discourse и запрашиваете поддержку в канале Support.

Если же вы разработчик и установка не предназначена для продакшна, это уже другая история :slight_smile:, и вам, возможно, стоит обратиться в канал Development.

Если это не установка в режиме разработки, то Docker обязателен.

Вы должны следовать руководству по стандартной установке, чтобы мы могли предоставить какую-либо поддержку.