docker数据卷如何备份和还原

备份:

先创建个需要备份的数据卷进行模拟

docker run -itd -v /cnbugs --name cnbugs-app centos /bin/bas

进入容器创建一些文件

[root@localhost ~]# docker exec -it cnbugs-app bash
[root@2557b6180ff4 /]# touch /cnbugs/backup
[root@2557b6180ff4 /]# echo "www.cnbugs.com">/cnbugs/backup 

如何进行备份呢?

[root@localhost ~]# docker run --volumes-from cnbugs-app -v $PWD:/backup centos tar czvf /backup/cnbugs-app.tzr.gz /cnbugs
tar: Removing leading `/' from member names
/cnbugs/
/cnbugs/backup

还原

删除容器的backup文件

[root@localhost ~]# docker exec -it cnbugs-app bash
[root@2557b6180ff4 /]# rm -f /cnbugs/backup

下面开始进行还原

[root@localhost ~]# docker run --volumes-from cnbugs-app -v$PWD:/backup centos tar xvf /backup/cnbugs-app.tzr.gz
cnbugs/
cnbugs/backup

进入容器进行查看

[root@localhost ~]# docker exec -it cnbugs-app bash
[root@2557b6180ff4 /]# cat /cnbugs/backup 
www.cnbugs.com

成功还原!

发表评论

后才能评论