Spostare Discourse tra sottodomini: funzionerà?

Situazione:

Nota: Entrambe le istanze riportate di seguito (server 1 e 2) sono in esecuzione in container Docker su due server diversi. Entrambi i server sono configurati per HTTP e HTTPS (porte 80 e 443) con certificati Let’s Encrypt:

  1. Discourse completamente funzionante sul server 1 con indirizzo IP 1, sia HTTP che HTTPS: discourse-test.example-domain.com
  2. Discourse inizializzato e in esecuzione (senza post o argomenti aggiuntivi) sul server 2 con indirizzo IP 2, sia HTTP che HTTPS: talktime.example-domain.com

Obiettivo:

Spostare tutto dal server 1 (ambiente di test) al server 2 (produzione), cambiando il dominio da discourse-test.example-domain.com a talktime.example-domain.com

Approccio proposto:

  1. Eseguire un backup di Discourse sul server 1
  2. Ripristinare il backup di Discourse (dal server 1) sul server 2

Dovrebbe funzionare senza problemi?

Oppure ci sono delle insidie a cui fare attenzione?

Grazie per qualsiasi indicazione.

Dovrebbe funzionare. Esegui

script/discourse remap //discourse-test.example-domain.com //talktime.example-domain.com

dopo il ripristino.

Aggiornamento:

Ha funzionato… grazie.

Ma gli avatar non sono stati ripristinati, per qualche motivo.

Forse perché questo fallisce?

script/discourse remap //discourse-test.example-domain.com //talktime.example-domain.com

Traceback (most recent call last):

2: from script/discourse:4:in `<main>'

1: from /usr/local/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:92:in `require'

/usr/local/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- thor (LoadError)

Questo ha funzionato:

su discourse -c 'bundle exec script/discourse remap //discourse-test.example-domain.com //talktime.example-domain.com

… ed è andato a buon fine…

Ma gli avatar non sono stati trasferiti durante questo processo di ripristino (abbiamo selezionato l’inclusione delle immagini nel backup).

Aggiornamento:

Abbiamo risolto il problema degli avatar trasferendo le immagini dal server 1 al server 2 da qui:

/var/discourse/shared/standalone/uploads/defaults