《Docker技术入门与实践》Docker入门2-数据管理

版权声明:转载请声明转自http://blog.csdn.net/thewindkee https://blog.csdn.net/thewindkee/article/details/88558320

数据管理

目的:对容器中数据备份,或者 多个容器间共享数据

方式

  1. 数据卷
  2. 数据卷容器

6.1 数据卷
docker run 的时候通过 -v 创建 数据卷
在这里插入图片描述
将主机的 /tmp/docker目录加载到容器的 /tmp/container中
在这里插入图片描述
测试,将主机的 /tmp/docker目录加载到容器的 /tmp/container中
docker run -it --name cent -v /tmp/docker:/tmp/container centos /bin/bash
在这里插入图片描述
如图,在容器中编辑能够在宿主机上看见对应文件
在这里插入图片描述

6.2 数据卷容器
使用数据卷容器,用它提供的数据卷供其他容器挂载
1.启动 数据卷容器 (dbdata ) docker run -it -v /dbdata --name dbdata centos
2.启动其他容器(可以开启多个),并使用 --volumes-from挂载 容器(dbdata )
3.在任一容器的 /dbdata目录下 操作文件,都能使其他容器发现

注意 数据卷容器 本身不需要保持启动。

在这里插入图片描述
在这里插入图片描述

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

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

创建了一个woker容器,--volumes-from dbdata 加载了dbdata的数据卷容器 到 worker容器, -v $(pwd):/backup 挂载主机的当前目录到容器的/backup目录,启动后 使用 tar cvf 将
容器的/dbdata(也就是容器卷的共享目录)内容打包到 /backup/backup.tar 即主机的当前目录。
ps: 挂载 dbdata到woker的/dbdata,挂载主机$pwd到worker的/backup ,woker打包/dbdata到/backup
之后只需要 定时 docker start worker 实现定时备份。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/thewindkee/article/details/88558320