Sugiro trabalhar com dois contêineres. Você pode fazer isso criando uma cópia do seu arquivo app.yml atual (você pode encontrá-lo em /var/discourse/containers) e renomeando-o para algo como import.yml. Em seguida, atualize o parâmetro version para o seu branch de importação personalizado.
params:
version: seu-branch
Sempre que precisar executar a importação, pare o contêiner app, inicie o contêiner import e execute o script dentro do contêiner import. Se alterações significativas foram feitas no Discourse, você pode precisar fazer rebase do seu branch com o último commit do core e reconstruir o contêiner.
cd /var/discourse
./launcher enter import
# quer mudar para um branch diferente?
su discourse -c 'git checkout <branch>'
# quer puxar novo código?
su discourse -c 'git pull'
Assim que terminar a migração, pare o contêiner de importação e reinicie o contêiner do aplicativo.
cd /var/discourse
./launcher stop import
./launcher start app
Créditos a @gerhard que me ensinou a fazer tudo isso ![]()