Docker Bind Mount 与 Volume


 

了防止docker里序列化数据的丢失,docker采用了挂载的方式 volume

docker -v volumeName:containerPath 
或者
docker -v containerPath

这种方式,linux中,docker会在/var/lib/docker/volumes下生成volumeName目录,将containerPath的目录挂载在/var/lib/docker/volumes/$volumeName/_data里

如果不指定volumeName,将随机生成一个文件

这种方式便是 volume

 

同时,为了能够自定义文件存在位置,还可以通过 docker -v 绝对路径 或者 ~/path:containerPath的方式,指定位置

这种方式,被称为 bind mount

 

通过docker volume inspect volumeName 查看volume的模式的挂载信息

也可以通过  docker inspect  $name| grep Mounts -A 10 查看信息,俩种方式都支持

 

还有需要注意的是:

bind mount

  容器以宿主机文件夹为准

volume

  宿主有数据时,以宿主机为准

  宿主无数据,从容器复制过来,再以宿主机为准

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM