-
实现容器中的数据持久化,主机与容器直接数据共享
-
一言以蔽之,文件夹映射,共享文件夹
-
docker容器产生的数据,如果不用commit生成新的镜像,那么可能会丢失
-
特点:
- 数据卷可在容器之间共享或重用数据
- 卷中的更改可以直接生效
- 数据卷中的更改不会包含在镜像的更新中
- 数据卷的生命周期一直持续到没有容器用它为止
-
直接命令添加
- docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
- 实际上就是将宿主和容器的文件夹进行映射
- docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名
- 容器只读,不可写,read only
- docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
-
容器关闭后,重新打开,相同的映射方法,数据依然在
- 因为数据是放到宿主机上的,那肯定在啊。。还用想么
-
dockerFile添加
-
javaEE hello.java ----> hello.class
-
Docker images -----> dockerFile
-
dockerFile是镜像的描述文件
-
先编写dockerFile
-
vim dockerFile
-
FROM centos VOLUME ["/dataVolumeContainer1","/dataVolumeContainer2"] //上面两个是宿主机挂载的文件夹 CMD echo "finished,----------success" CMD /bin/bash
-
build 生成镜像,将dockerFile文件build成新的镜像
- docker build -f /xxxx/dockerFile -t /命名空间/镜像名
-
对应的主机目录在哪:
- docker会给默认的宿主机地址
- 用docker inspect可以看到
- 新版的docker在mounts里面
-
-
数据卷容器:已经有一个容器挂载了数据卷,而其他的容器通过挂载之前的这个容器实现数据共享,那之前的容器叫数据卷容器
- 插排上 插 插排,将套娃进行到底
- 命令为: docker run -it --name dc02 --volumes-from dc01 镜像名
- 即在运行容器时,就指定挂载哪个容器
- 它们其实都绑定的宿主,像个总线一样
docker的容器数据卷
最新推荐文章于 2024-09-25 15:27:30 发布