我使用github.com/samalba/dockerclient,并希望创建一个容器。所以,方法是CreateContainer,它需要一个ContainerConfig。
ContainerConfig是一个结构体。还有一个字段Volumes,类型是type map[string] struct{}
我知道我可以用make(map[string]struct{})
创建这样一个映射
但是我如何给映射赋值呢?
cc := &dockerclient.ContainerConfig{
// ...
Volumes: map[string]struct{}{
"foo": struct{}{},
"bar": struct{}{},
// ...
},
}
Volumes: map[string]struct{}{
"dir1": struct{}{},
"dir2": struct{}{},
},
只将文件夹从localhost映射到docker容器。不映射任何内容
在Go 1.19中,可以通过删除冗余的struct{}
来简化语法:
cc := &dockerclient.ContainerConfig{
// ...
Volumes: map[string]struct{}{
"foo": {},
"bar": {},
// ...
},
}