6.3 利用数据卷容器来迁移数据

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

1.备份

$ docker run --name worker --volumes-from dbdata \
    -v $(pwd):/backup ubuntu:18.04 tar -cvf /backup/backup.tar /dbdata

上述命令:

  • 利用ubuntu镜像创建了一个容器worker;

  • 使用--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.恢复

$ docker run -itd --name dbdata2 -v /dbdata ubuntu:18.04
c2f2736dc8a9abba28e08fbef47ae612669b5dd1f16e5a1b371e63ba45f02809

$ docker run --name recovery --volumes-from dbdata2 \
    -v $(pwd):/backup ubuntu:18.04 tar -xvf /backup/test.tar
dbdata/
dbdata/test.log

Last updated