Come eseguire il backup di un Docker volume

Cerca

Prima di apportare qualsiasi modifica o eseguire operazioni di manutenzione sui volumi della propria infrastruttura Docker, è vivamente consigliato eseguire un backup di questi volumi. Vediamo quindi in questo semplice tutorial come procedere al backup di un docker volume.

Backup di un docker volume utilizzando tar

Per eseguire un backup compresso del docker volume possiamo utilizzare un container temporaneo Alpine. Il comando da lanciare è essenzialmente il seguente:

				
					docker run --rm -v my-software_dbdata:/data -v $(pwd):/backup alpine tar -czvf /backup/my-software_dbdata.tar.gz -C /data .
				
			

Questo comando semplicemente esegue queste operazioni:

  • Monta il volume sulla cartella /data all’interno del docker container Alpine
  • Salva il backup compresso (tar.gz) nella propria working directory

Una volta che il comando di backup ha terminato, verifichiamo l’esistenza del file di backup semplicemente lanciando:

				
					ls -lh my-software_dbdata.tar.gz
				
			

Copiare i dati di un docker volume in una host directory

Se preferiamo invece copiare tutti i dati contenuti nel docker volume in una host directory possiamo invece seguirela seguente procedura.

Creiamo anzitutto la cartella che conterrà i dati provenienti dal nostro docker volume:

				
					mkdir -p ~/docker-backups/my-software_dbdata
				
			

Lanciamo quindi questo comando per copiare il contenuto del docker volume nella cartella che abbiamo appena creato:

				
					docker run --rm -v my-software_dbdata:/data -v ~/docker-backups/my-software_dbdata:/backup alpine sh -c "cp -a /data/. /backup/"
				
			

Eseguire il restore di un backup di un docker volume

Per eseguire il restore di un backup compresso di un docker volume, lanciamo il seguente comando:

				
					docker run --rm -v my-software_dbdata:/data -v $(pwd):/backup alpine tar -xzvf /backup/my-software_dbdata.tar.gz -C /data
				
			

Se si è invece eseguita una direct copy dei dati in una host directory, lanciamo il seguente comando:

				
					docker run --rm -v my-software_dbdata:/data -v ~/docker-backups/my-software_dbdata:/backup alpine sh -c "cp -a /backup/. /data/"
				
			

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

Most Recent

Come eseguire il backup di un Docker volume

Prima di apportare qualsiasi modifica o eseguire operazioni di manutenzione sui volumi della propria infrastruttura Docker, è vivamente consigliato eseguire un backup di questi volumi.

Partners