存储卷
写时复制
存储卷(Volume)的实现
Docker默认数据存储方式
数据卷
Data Volumes
存储卷类型
Bind mount volume
Docker-managerd volume
多容器共享volume
存储卷
对于Docker来讲,容器运行的底层引擎,在组织和运行其容器时,每个容器内只运行一个程序及其子程序,对于这个容器来说,启动是依赖于底层联合挂载启动而成,它底层能够实现分层构建以及联合挂载镜像的文件系统,包含AUFS以及DEVMAPPER等,并且只有在最上层是读写的,其他层都是只读的。所有在容器内部执行的数据修改操作,事实上都保存在最上层之上的,对于下层类型的操作,假如说要删除一个文件,那么就需要使用写时复制的机制来实现;
写时复制
Docker镜像由多个只读层叠加而成,启动容器时,Docker会加载只读镜像层并在镜像栈顶部添加一个读写层;
如果运行中的容器修改了现有的一个已经存在的文件,那该文件将会从读写层下面的只读层中复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中该文件的副本所隐藏,标记为已删除,此即为“写时复制”机制;
存储卷(