Příspěvek popisuje kroky k pořízení zálohy (snímku) kontejneru dockeru a jeho obnovení. Upozorňujeme, že tento příspěvek pojednává hlavně o odevzdání kontejneru jako obrázku. Toto funguje na kontejneru, který nepoužívá objem dat. U kontejnerů s objemem dat je třeba zálohovat objem dat zvlášť.
Probíhá zálohování kontejneru Docker
1. Potvrďte požadovaný kontejner jako obrázek
# docker commit -p [container-id] backup01 sha256:89682d4xxxxxx
Nyní bude vytvořena nová záloha obrazu01. Vezměte prosím na vědomí, že to nepokryje objem dat. Zálohu datového svazku (pokud existuje) musíte provést samostatně.
Chcete-li zjistit tento datový adresář (umístění datového svazku) kontejneru, použijte příkaz „docker inspect container-name ‘. Získáte sekci nazvanou „Mounty“. Místo uvedené v části „Zdroj“ je objem dat. Můžete přímo zálohovat tuto složku (zde /site), abyste získali zálohu datového svazku.
"Mounts": [ { "Source": "/site", "Destination": "/usr/xx/xxx/xxxs", "Mode": "", "RW": true, "Propagation": "rprivate"
2. Zálohu bitové kopie01 můžete uložit do souboru tar pomocí následujícího příkazu:
# docker save -o backup01.tar backup01
# ls -al | grep back -rw------- 1 root root 178697728 Mar 31 23:35 backup01.tar
Můžete se rozhodnout uložit soubor tar na bod připojení NFS. Další možností je přímé odeslání image backup01 do vašeho lokálního registru. Před odesláním záložního obrázku jej musíme vhodně označit.
# docker tag backup01 localhost:5000/backup-image:v1
V tomto příkladu je localhost název hostitele, kde se nachází místní registr, a 5000 je číslo portu, na kterém registr naslouchá. Pokud pracujete na enginu Docker umístěného na jiném hostiteli než v registru, musíte změnit název hostitele tak, aby ukazoval na správného hostitele. Všimněte si, že název úložiště a značky, v příkladu backup-image:v1, musí být všechny uvedeny malými písmeny, aby se jednalo o platnou značku.
# docker push backup-image:v1
Obnovení kontejneru Docker
1. Obrázek lze extrahovat ze záložního souboru tar pomocí následujícího příkazu
# docker load -i /tmp/backup01.tar ff91b8b5abb1: Loading layer [==================================================>] 2.56 kB/2.56 kB Loaded image: backup01:latest
Z tohoto obrázku můžete vytvořit kontejner pomocí „spuštění dockeru “. Pokud jste měli objem dat na původním kontejneru. Musíte také obnovit objem dat a spustit kontejner s datovým objemem (docker run -v )
2. V případě tlačeného obrazu. Můžete to přímo vytáhnout.
# docker pull localhost:5000/backup-image:v1