Docker数据卷容器

新建数据卷容器

新建一个专门用来存放数据的容器,名为db_data,并设置挂载卷db_data,这个是存放数据的文件夹

docker run -it -d --name db_data -v /db_data ubuntu:14.04

用容器db1测试数据卷容器是否可用

docker run -it -d --name db1 --volumes-from db_data ubuntu:14.04
docker exec -it db1 bash
cd db_data
echo "db1 beifen test" > db1_test.txt

db1启动后,由于volumes-from了db_data,所以在根目录下也会生成1个db_data文件夹,在此文件夹下新建1个db1_test.txt文件

docker exec -it db_data bash
cd db_data
ls

此时在db_data容器下,发现也已经存在了db1_test.txt,说明数据存储成功

备份数据卷容器

docker run --rm --name beifen --volumes-from db_data -v host_backup_path:/container_backup ubuntu:14.04 tar cvf /container_backup/backup.tar /db_data

新建1个名为beifen的(暂时性,之后会删除)容器,由于volumes-from了db_data,所以在根目录下也会生成1个db_data文件夹,经过执行命令后,将db_data文件下的数据压缩在container_backup文件夹下,并存在宿主机上的host_backup_path下

还原数据卷容器

新建一个数据卷容器db_data2

docker run -it -d --name db_data2 -v /db_data ubuntu:14.04

新建1个名为huanyuan的(暂时性,之后会删除)容器,由于volumes-from了db_data2,所以在根目录下也会生成1个db_data文件夹,宿主机上的host_backup_path下的压缩数据映射到了container_backup文件夹下,并解压至db_data文件夹下

docker run --rm --name huanyuan --volumes-from db_data2 -v ~/host_backup:/container_backup ubuntu:14.04 tar xvf /container_backup/backup.tar -C /db_data

此时查看db_data2容器,发现db_data文件下也已经有了同步来的数据

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容