关于容器卷 其实就是可以理解得简单点 就是挂载
也就是让容器内的某个地方的内容和宿主机的某个地方进行同步或者是容器之间实现同步
而特点呢 就是:
- 数据卷可以在容器之间共享或重用数据
- 卷中的更改可以直接生效
- 卷中的更改不会包含在镜像的更新中
- 生命周期一直持续到没有容器使用它为止
容器内添加数据卷(也就是挂载)
方式一、直接命令添加
#语法 docker run -it -v /主机的绝对路径:/容器内的路径 镜像名字
如:
docker run -it -v /myDataVolume:/dataVolumeContainer centos
此时 主机和融七都会增加新的文件夹 之后进行的动作都会同步
#查看是否挂载成功
根据当前的容器id 在主机执行命令
docker inspect 容器id 在出现的信息中 Binds 说明了之间已经成功挂载
不论容器是否在运行 主机在挂载项目做的任何动作都会同步
#容器不能增删改查文件
如:docker run -it -v/myDataVolume:/dataVolumeContainer:ro centos
方式二、通过dockerFile添加
1.创建 一个文件夹 取名 docker 并进入
2.创建dockerFile 在文件中使用volume指令给镜像添加一个或多个数据卷
#volume test
FROM centos
VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"]
CMD echo "finished,-----success1"
CMD /bin/bash
3.将上述文件build成一个镜像
docker build -f dockerfile路径 -t 镜像名字 .
4.运行这个镜像 就会发现已经成功挂载 容器对应的内容 会同步在 主机的/var/lib/docker/volumes/下
关于容器数据卷的介绍就先到这里 可以说 这方面的作用非常 在今后肯定会遇到
后续也会对文章进行更新完善
觉得有用的就点个赞 加个关注吧!