Restaurando o fórum em um novo servidor

Dê uma olhada em Syncing Production to Staging

especialmente Isso parece uma boa abordagem

Aqui está um script que usamos para manter um site de staging espelhado no site de produção.

#!/bin/bash
echo "cd /var/www/discourse"
cd /var/www/discourse

echo "/usr/local/bin/rake site_settings:export > /var/www/discourse/settings.yml"
/usr/local/bin/rake site_settings:export >  /var/www/discourse/settings.yml

echo "cd /var/www/discourse/public/backups/default"
cd /var/www/discourse/public/backups/default

echo "/usr/local/bin/discourse restore " $(ls -r | head -1)
/usr/local/bin/discourse restore $(ls -r | head -1)

echo "cd /var/www/discourse"
cd /var/www/discourse

echo "/usr/local/bin/rake site_settings:import <  /var/www/discourse/settings.yml"
/usr/local/bin/rake site_settings:import <  /var/www/discourse/settings.yml

Ele é chamado a partir do Docker.

Exemplo de chamada de um script de fora da instância do Discourse:

echo 'cd /var/www/discourse; RUBY_ENV=production rails r /var/www/discourse/script/import_scripts/wordpress-with-sabai-export.rb /var/www/discourse/script/import_scripts/wordpress-discourse-id-map.json' | docker exec -i $(docker ps | grep app | awk '{print $1}') /bin/bash