Docker卷对于备份,还原和迁移很有用。使用该 –volumes-from标志创建一个安装该卷的新容器。
备份容器
例如,创建一个名为的新容器dbstore:
$ docker run -v /dbdata –name dbstore Ubuntu /bin/bash
然后在下一个命令中,我们:
启动一个新容器并从该dbstore容器装入卷
将本地主机目录挂载为 /backup
传递一个命令,该命令将dbdata卷的内容backup.tar压缩到我们/backup目录中的文件中。
$ docker run –rm –volumes-from dbstore -v $(pwd):/backup Ubuntu tar cvf /backup/backup.tar /dbdata
令完成并且容器停止后,我们将获得dbdata卷的备份。
从备份还原容器
使用刚刚创建的备份,您可以将其还原到同一容器或在其他位置创建的另一个容器。
例如,创建一个名为的新容器dbstore2:
$ docker run -v /dbdata –name dbstore2 Ubuntu /bin/bash
然后将备份文件解压缩到新容器的数据卷中:
$ docker run –rm –volumes-from dbstore2 -v $(pwd):/backup Ubuntu bash -c “cd /dbdata && tar xvf /backup/backup.tar –strip 1”
您可以使用首选工具使用上述技术来自动执行备份,迁移和还原测试。