利用数据卷容器迁移数据--docker数据的备份与恢复

在docker中,可以利用数据卷容器对其中的数据卷进行备份,恢复,以实现数据的迁移。

1.备份
docker run --volumes-from dbdata -v $(pwd):/backup --name worker1 centos tar cvf /backup/backup.tar /dbdata
tar: Removing leading `/' from member names
/dbdata/
/dbdata/test
这个命令的含义是:首先利用centos镜像创建了一个容器worker1。使用--volumes-from dbdata参数让worker容器挂载dbdata容器的数据卷(即dbdata数据卷);使用 -v $(pwd):/backup参数来挂载本地的当前目录到worker容器的/backup目录。

worker 容器启动后,使用tar cvf /backup/backup.tar /dbdata命令将/dbdata 下内容备份为容器内的/backup/backup.tar, 即宿主机当前目录下的backup.tar。

2.恢复

如果要将数据恢复到一个容器,首先创建一个带有数据卷的容器dbdata2

[root@localhost ~]# docker run -v /dbdata --name dbdata2 centos /bin/bash

然后创建另一个新的容器,挂载dbdata2的容器,并使用tar 解压备份文件到所挂载的容器卷中:

[root@localhost ~]# docker run --volumes-from dbdata2 -v $(pwd):/backup busybox tar xvf /backup/backup.tar
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
90e01955edcd: Pull complete
Digest: sha256:2a03a6059f21e150ae84b0973863609494aad70f0a80eaeb64bddd8d92465812
Status: Downloaded newer image for busybox:latest
dbdata/
dbdata/test

转载于:https://blog.51cto.com/13658834/2333243

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值