Docker managed volume与bind mount在使用上的最大区别是不需要指定mount源,指明mount point就行。
我们通过-v告诉docker需要一个data volume,并将其mount到/usr/local/apache2/htdocs。那么这个data volume在哪呢?
这个答案可以从容器的配置信息中找到。
Docker inspect c73897
找到Mounnts这个信息
Source就是该volume在host主机上的目录。每当容器申请mount docker managedvolume时候,docker都会在/var/lib/docker/volumes下生成一个目录,这个目录就是mount源。
下面继续研究这个volume,看看里面是啥。
Volume中的内容跟容器原有的/usr/local/apache2/htdocs完全一样。因为如果mount point指向已有的目录,则原有数据会被复制到volume中。
可以直接更改数据
然后
Curl 120.0.0.1:8001
除了通过docker inspect查看volume,我们也可以使用docker volume命令: