Skip to content

notas mentais de um nerd

tecnologia e finanças

Menu
  • Inicio
  • Sobre
  • BITcontrol
  • Pesquisar
Menu

Como fazer backup de todos os volumes dos containers docker

Posted on junho 12, 2026

Para fazer o backup de todos os volumes de uma vez só, a forma mais eficiente é usar um script curto no terminal. Como o Docker não possui um comando nativo docker volume backup --all, nós listamos os volumes e rodamos o comando de compactação em loop.

Aqui está o comando pronto para copiar e colar no seu terminal:

Bash

for volume in $(docker volume ls -q); do
    echo "Fazendo backup do volume: $volume"
    docker run --rm \
      -v "$volume":/data \
      -v "$(pwd)":/backup \
      ubuntu tar czf /backup/"$volume"_backup.tar.gz -C /data .
done

O que este script faz?

  1. docker volume ls -q: Lista apenas os nomes de todos os volumes existentes.
  2. for volume in ...: Cria um loop que processa um volume por vez.
  3. tar czf ...: Salva um arquivo .tar.gz individual para cada volume na sua pasta atual do host, usando o próprio nome do volume para identificar o arquivo (ex: meu_volume_backup.tar.gz).

Como Restaurar Todos de uma Vez?

Se você tiver uma pasta cheia de arquivos .tar.gz criados por esse script e quiser restaurá-los (ou movê-los para outro servidor), use este loop:

Bash

for arquivo in *_backup.tar.gz; do
    volume="${arquivo%_backup.tar.gz}"
    echo "Restaurando volume: $volume"
    docker volume create "$volume"
    docker run --rm -v "$volume":/data -v "$(pwd)":/backup ubuntu bash -c "cd /data && tar xzf /backup/$arquivo"
done

?? Aviso: Lembre-se de parar os containers (docker stop $(docker ps -a -q)) antes de rodar o backup para garantir que nenhum arquivo seja modificado durante a cópia.

Compartilhe isso:

  • Compartilhar no X(abre em nova janela) X
  • Compartilhar no Facebook(abre em nova janela) Facebook
  • Imprimir(abre em nova janela) Imprimir
©2026 notas mentais de um nerd | Design: Newspaperly WordPress Theme