1.9.1中的数据容器不存在Docker卷

时间:2016-01-27 08:39:08

标签: docker boot2docker docker-toolbox

Windows 7平台上的Docker工具箱1.9.1

当我使用docker inspect命令时,我创建的数据容器没有卷。

$ sudo mkdir /abc
$ docker run -d --name data -v /abc:/hostabc busybox true
$ docker inspect --format "{{ .Config.Volumes }}" data
map[]

我也在1.7.1中尝试了这个,它显示如下

$ docker inspect --format "{{ .Volumes }}" data   # in 1.7.1 it is Volumes directly
map[/hostabc:/abc]

创建数据容器时我做错了什么?

或者还有其他地方可以检查数据容器中的volumes

1 个答案:

答案 0 :(得分:2)

尝试改为

docker inspect -f '{{ (index .Mounts 0).Source }}' containerid

如果您有多个共享,那么只需使用range,如下所示

docker inspect -f '{{range $k := .Mounts}}{{println $k.Source }}{{end}}' containerid

As I mentioned here,自docker 1.8以来发生了变化

注意:OP提出的PR 45now merged,其指令如下:

version=`$docker -v 2>&1 | awk -F'[ .]' '{printf "%2.f%02.f%02.f",$3,$4,$5}'`

# echo $version

if [ $version -gt 10800 ]; then
    echo "docker version 1.8+"
    volumes=`$docker inspect --format='{{range $k := .Mounts}}{{println $k.Destination}}{{end}}' "$container" |  grep -v -E "^$"`
else
    echo "docker version <1.8"
    volumes=`$docker inspect --format='{{range $k,$v := .Volumes}}{{println $k}}{{end}}' "$container" |  grep -v -E "^$"`
fi