Errore durante il ripristino del database

Ho provato a ripristinare il mio database per la prima volta da quando uso Discourse, ma ho ottenuto un errore del genere:

Qualcuno può aiutarmi? Grazie.

@VANHUSSEN

Hai provato a ripristinare dalla riga di comando nel container?

Per favore, non pubblicare lo stesso problema più volte.

Sì, ho caricato il file di backup nella directory /var/www/discourse/public/backups/default/ sul nuovo server.

Vai alla directory /var/www/discourse/ sul nuovo server.

cd /var/www/discourse/

Installa le dipendenze.

sudo gem install thor

Vai alla dashboard di amministrazione di Discourse → ImpostazioniBackup, e attiva l’opzione consenti ripristino.

Successivamente, esegui il seguente comando per ripristinare il sito dal backup.

RAILS_ENV=production script/discourse restore nome-file-del-backup.tar.gz

Una volta completato il ripristino, riavvia Discourse.

sudo systemctl restart discourse discourse-sidekiq

Aggiorna quindi la pagina web di Discourse.
Ma al passaggio:

sudo gem install thor

Ho ricevuto un errore. Perché?

Scusa Jeff Atwood, per aver postato lo stesso problema più volte.

Ciao @VANHUSSEN

Dai pochi messaggi di errore che hai pubblicato, sembra che tu abbia un problema con la versione di Ruby che stai utilizzando.

Questo, almeno, è quanto indica il messaggio di errore che hai postato nel tuo primo intervento.

Hai provato a ricreare il tuo container e poi ad eseguire il processo di ripristino?

Ho provato questo comando:
Rimuovi ruby2.5-dev.

sudo apt remove ruby2.5-dev

Installa ruby2.6-dev da un PPA.

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

Ma ricevo ancora l’errore. Aiutatemi per favore.

Ciao @VANHUSSEN

Forse sarebbe meglio se ricompilassi semplicemente il contenitore predefinito e supportato invece di usare quello attuale.

./launcher rebuild app

Assumendo, naturalmente, che il tuo contenitore Discourse sia specificato in app.yml

Ho installato Discourse senza Docker.

xen@xen:~$ lsb_release -a

Nessun modulo LSB disponibile.
ID distributore: Ubuntu
Descrizione:    Ubuntu 18.04.4 LTS
Versione:        18.04
Codice nome:       bionic

Ti suggerisco gentilmente di installare con Docker se stai eseguendo un’applicazione Discourse in produzione e richiedi supporto su Support.

Se sei uno sviluppatore e l’installazione non è in produzione, è un’altra storia :slight_smile: e potresti considerare di pubblicare su Development

Se non si tratta di un’installazione per sviluppo, Docker è obbligatorio.

È necessario seguire la guida all’installazione standard per poter ricevere supporto.