Docker容器数据卷
是什么
-
数据卷存在于宿主机的文件系统中,独立于容器,和容器的生命周期是分离的。
-
数据卷可以是目录也可以是文件,容器可以利用数据卷与宿主机进行数据共享,实现了容器间的数据共享和交换。
-
容器启动初始化时,如果容器使用的镜像包含了数据,这些数据会拷贝到数据卷中。
-
容器对数据卷的修改是实时进行的。
-
数据卷的变化不会影响镜像的更新。数据卷是独立于联合文件系统,镜像是基于联合文件系统。镜像与数据卷之间不会相互影响。
能干嘛
-
容器的持久化
-
容器间继承+共享数据
怎么做
容器停止后,主机修改的数据也会同步
容器内命令添加
#直接创建数据卷
docker run -it -v /hostdir:/containerdir imagesname
#eg:docker run -it -v /docker1:/container nginx0309 /bin/bash
docker inspect containerID #查看容器是否挂载成功
#挂载只读目录
docker run -it -v /hostdir:/containerdir:ro imagesname
Dockerfile添加
##eg:name=myfile
FROM centos
VOLUME ["/container_0315"]
CMD echo "finished,--------success1"
CMD /bin/bash
##运行Dockerfile生成新镜像
docker -f myfile -t newimagename
##docker run 运行新镜像,可以看到容器内创建的container_0315
##使用docker inspect查看主机目录


浙公网安备 33010602011771号