使用docker inspect命令查看container的volume信息,按照书本上面敲,发现一直报错:
使用命令如下:
sudo docker inspect --format "{{.Volumes}}" 676b04bec7c5
错误信息为
Template parsing error: template: :1:2: executing "" at <.Volumes>: map has no entry for key "Volumes"
然后网上找到一条类似的错误信息,原来是现在命令方式改了.
新的查看方式如下,Volumes前面加上了.Config,注意有点啊,刚开始作者粗心大意漏了.
sudo docker inspect --format "{{.Config.Volumes}}"
显示结果正常:
map[/data:{}]
此处显示的信息只有docker 容器本地数据卷的信息,与其关联的物理主机的挂载目录位置信息,要使用如下信息查看:
docker inspect -f "{{.Mounts}}" 676b04bec7c5
#显示结果
[{volume f06e4ee059b5e78feb957b5d2fcefe7287309fa43cef4b431c22fbac5c178861 /var/lib/docker/volumes/f06e4ee059b5e78feb957b5d2fcefe7287309fa43cef4b431c22fbac5c178861/_data /data local true }]
其实此处可以通过上面提供报错链接的文章的后面解决,但是当初作者没注意,忽略了.可以直接查看对应的挂载地址,也能达到我们的目的
命令如下
docker inspect redis-master | grep Mounts -A 10
#对应的 docker inspect 信息数组格式如下:
"Mounts": [
{
"Type": "volume",
"Name": "f06e4ee059b5e78feb957b5d2fcefe7287309fa43cef4b431c22fbac5c178861",
"Source": "/var/lib/docker/volumes/f06e4ee059b5e78feb957b5d2fcefe7287309fa43cef4b431c22fbac5c178861/_data",
"Destination": "/data",
"Driver": "local",
"Mode": "",
"RW": true,
"Propagation": ""
}