Docker数据卷容器的备份、恢复

一 备份
我们先创建一个data容器.
docker run -i -t -v /data --name data docker/whalesay
上面创建的data数据卷容器挂载了data目录.
为了验证数据卷容器的备份功能,在挂载的/data目录下创建一个data文件,并写入内容"data"。
然后为了利用数据卷容器备份,使用 –volumes-from 标记来创建一个加载data容器卷的容器,并从主机挂载当前目录到容器的/backup目录。
docker run -i -t --volumes-from data -v $(pwd):/backup docker/whalesay tar cvf /backup/backup.tar /data
$(pwd)是docker支持的指定当前目录的方法,了解linux基本命令的会发现,linux查看当前目录就是pwd命令。
容器启动后,在当前目录下生成的backup.tar文件就是data容器卷的备份文件。
这样,数据卷容器中的数据就备份完成。
整个实践过程如下:
Docker数据卷容器的备份、恢复_第1张图片

二 恢复
备份最终也是为了可以恢复,否则备份就没有意义了,Docker恢复备份也很简单,只需要2步即可。
首先,创建一个带有空数据卷的容器data1。
docker run -itd -v /data --name data1 ubuntu /bin/bash
然后,创建另一个容器,挂载data1容器卷中的数据卷,并使用untar解压备份文件到挂载的容器卷中。
docker run --volumes-from data1 -v $(pwd):/backup ubuntu tar xvf /backup/backup.tar
这个时候,之前备份的数据卷容器的数据已经恢复到了容器data1中了。
为了查看和验证恢复的数据,我们可以再启动一个容器挂载data1容器卷来查看。
整个实践过程如下:
Docker数据卷容器的备份、恢复_第2张图片

你可能感兴趣的:(Docker)