老师,关于VOLUME的一点疑问
来源:9-1 课程总结

KeithTt
2018-07-02
据我所知,VOLUME有两种挂载方式:
1、不创建数据卷,直接把本地目录挂载到容器内的目录。这种方式优点明显,就是本地数据跟容器内的数据是同一份数据,完全同步,非常方便开发环境使用。
2、创建数据卷,需要在Dockerfile里面使用VOLUME指令创建容器内的挂载点。
疑问在第二种上面,我感觉第一种方式是可以满足各种需求场景的,数据迁移的话直接移动数据目录就可以了。
第二种情况下:
1、docker volume可不可以直接移动数据卷创建的本地文件目录?
2、如果不在Dockerfile里面使用VOLUME指令创建挂载点会怎样?上课的时候没有说到这一点,直接就是 -v Volume:ContainerDir 这样启动各个容器的,好像并没有什么问题,那么Dockerfile里面的VOLUME指令是不是没有作用?另外volume是可以不用事先创建的,运行的时候直接指定名字会自动创建。。
3、什么场景下必须创建volume,而不是挂载本地目录?
感谢老师!!!
写回答
2回答
-
同学你好。数据卷是比目录挂载更高级的方案,数据卷可以在同时在多个容器间共享,而且我们还可以把构建数据卷的命令写到dockerfile里面。比如在数据卷中创建什么目录,创建什么文件都可以在dockerfile中规定,这样dockerfile在其他主机上构建的时候就自动构建出了数据卷。本地映射目录就得自己去弄初始化工作了。另外,PXC是不支持本地目录挂载的,只支持数据卷。
072018-07-02 -
神思者
2018-07-02
数据卷是自动创建的,可以不提前创建
012018-07-02
相似问题