docker容器数据卷(数据持久化)
1是什么
(有点像redis的rdb和aof)
2能干嘛
2.1容器的持久化
2.2容器间继承+共享数据
3数据卷
容器内添加
3.1直接命令添加
docker run -it -v /宿主机绝对路径目录:/容器内目录 镜像名
3.1.1查看数据卷是否挂载成功
docker inspect 容器id
Hostconfig & Volumes
3.1.2容器与宿主机之间数据共享
例:touch list.txt 查看俩边数据卷内有无list.txt文件
即使容器处于离线状态,下次运行也能同步
3.1.3命令带权限
docker run -it -v /宿主机绝对路径目录:/容器内目录:ro 镜像名 (只读)
只允许容器单向写操作
3.2DockerFile添加
JAVAEE hello.java ——》hello.class
Docker images ——》DockerFile
3.2.1在根目录下新建mydocker文件夹并进入
3.2.2可在DockerFile中使用VOLUME命令来给镜像添加一个或多个数据卷
3.2.3file构建
#volume test
FROM centos
VOLUME ["/dataContainer1","/dataContainer2"]
CMD echo "finished,----success1"
CMD /bin/bash
3.2.4build后生成镜像
docker build -f /mydocker/Dockerfile -t zzyy/centos .
4数据卷容器
4.1是什么
移动硬盘上的移动硬盘,实现数据的传递依赖
4.2总体介绍
以上一步新建的镜像zzyy/centos为模板并运行容器dc01/dc02/dc03
docker run -it --name dc01 zzyy/centos
容器间传递共享(--volumes-from)
docker run -it --name dc02 --volumes-from dc01 zzyy/centos
数据共享直到没有容器使用它为止