Docker 05 - 容器数据卷
2019-07-21 12:08
363 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_30815637/article/details/89886918
Docker 05 - 容器数据卷
是什么 ?
有点类似 Redis 里面的 rdb 和 aof 文件.
能干嘛 ?
容器的持久化 和 容器之间的共享数据和继承.
数据卷 ?
直接命令添加数据卷 :
运行容器添加数据卷
#命令 docker run -it -v /宿主机绝对路径目录:/容器内的目录 镜像名
查看数据卷是否加载成功 :
容器和宿主机之间的数据共享以及是否同步 :
命令(带权限)
docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名
DockerFile 添加数据卷 :
根目录新建 mydocker 文件夹并进入
mkdir mydocker cd mydocker
在 DockerFile 中使用 VOLUME 指令来给镜像添加 一个或者多个数据卷 在 mydocker 目录中创建
dockerFile :
# volume test FROM centos VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"] CMD echo "finished,--------success1" CMD /bin/bash
File 构建
docker build -f /mydocker/dockerFile -t lfy/mycentos .
build 后生成镜像
docker run -it 容器id
进入容器后默认在根目录生成了数据卷的文件夹两个
ls -l
然后不关闭退出容器
#执行该指令查看数据卷文件在宿主机的那个文件夹 docker inspect 容器id
然后进行测试是否成功 同命令方式
数据卷容器 ?
什么是数据卷容器 ?
命名的容器挂载数据卷, 其他容器通过挂载这个(父容器)实现数据共享,挂载数据卷的容器,称之为数据卷容器.
案例 :
以上一步新建的 centos 为模板运行三个容器,实现容器间的传递共享 :
- 新建一个父容器 cs01
- 使 cs02 和 cs03 继承自容器 cs01
- cs02 和 cs03 各自在自己的第二个数据卷中添加内容
- 观察 cs03 中的第二个数据卷中有 cs02 新建的文件
- 删除 cs01 之后, 观察 cs02 和 cs03 是否可以访问 同样有数据
结论 :
容器之间的配置信息的传递,数据卷的生命周期一直持续到没有容器使用它为止.
相关文章推荐
- Docker数据持久化与容器迁移
- docker通过模板创建镜像以及容器、仓库和数据管理
- 如何共享数据?- 每天5分钟玩转 Docker 容器技术(41)
- [docker] 管理docker容器中的数据
- 使用数据卷容器,配置Nginx Docker作为静态文件服务器
- 自己学Docker:7.数据卷容器的备份、恢复
- Docker cp 命令(用于容器与主机之间的数据拷贝)
- Docker之数据卷和数据卷容器
- Docker容器数据管理6
- Docker容器、镜像、数据卷
- Docker 在容器中存储数据 - 选择存储驱动程序
- 四、Docker——容器数据卷
- 【Docker】利用数据卷容器来备份、恢复、迁移数据卷
- docker创建数据卷以及数据卷容器
- Docker Mysql容器间数据简单迁移
- Docker数据持久化与容器迁移(三)
- 用 volume container 共享数据 - 每天5分钟玩转 Docker 容器技术(42)
- Docker容器学习梳理--Volume数据卷使用
- Docker容器数据的管理
- 验证 Swarm 数据持久性 - 每天5分钟玩转 Docker 容器技术(104)