Pergunta sobre Backup e Restauração do Docker

Olá, eu tenho o Discourse CE rodando no Docker. Tenho direitos de root e faço backup do container com docker stop <id> e docker image save -o <id> file.tar. Depois disso, atualizo o discourse com sucesso. Agora testei a restauração com docker image load -i file.tar e docker start <id>, mas ainda é a versão atualizada e não a antiga como eu esperava.
O que eu fiz de errado?

Obrigado

Isso é estranho.

Eu esperaria que não funcionasse, já que o banco de dados (que está em armazenamento persistente) foi migrado para além do que a imagem antiga pode suportar.

Como você atualizou? Da linha de comando com uma reconstrução ou pela interface do Discourse?

1 curtida

Oi,
sim, eu também não entendi isso. Eu tento novamente com o mesmo resultado. Dei uma chance à interface do usuário da Web e ela funciona bem. Sem erros, sem problemas.

Você destruiu a imagem docker do Discourse ou restaurou o backup para uma diferente?

E eu não destruí a imagem. Essa foi minha falha?

Não sei. Acho que nunca usei o salvamento de imagem antes.

Mas acho que tentaria em seguida restaurar esse backup para um novo nome de contêiner.

Desculpe, faltou a resposta para sua pergunta. Era a mesma, apenas backup e restauração.

Os dados persistentes são armazenados não no container, mas no sistema de arquivos, como mencionado por @pfaffman.

Deveríamos perguntar: Que tarefa você está tentando realizar?

1 curtida

A ideia era fazer backup de todo o contêiner docker durante a noite. Também, como neste caso, antes da atualização do beta4 para o beta5 e, em caso de erro, reverter para o contêiner antigo.
Obrigado

Você também precisaria reverter o banco de dados.

Você pode querer um site de staging para testar a atualização antes de executá-la. Você também pode enviar o container do site de staging para um repositório e, em seguida, lançá-lo no site de produção.

2 curtidas