【发布时间】:2018-01-26 22:00:16
【问题描述】:
我目前正在尝试使用官方 GoLang Docker SDK 创建一个 Docker 容器,并尝试将一个卷从我的 localhost 挂载到 docker 容器。
vol := map[string]struct{}{"/pathInDocker":{}}
// This was prepared using example at:
//https://docs.docker.com/develop/sdk/examples/#run-a-container
res, err := cli.ContainerCreate(ctx, &container.Config{
Image: testImageName,
Volumes: vol,
Cmd: []string{"ls", "/"},
}, nil, nil, "")
这适用于创建容器并将“/pathInDocker”添加到 docker 容器,但是,我不知道如何为 localhost 添加挂载点。
我已经为 vol 变量尝试了以下可能的值
vol := map[string]struct{}{"localPath:/pathInDocker":{}}
vol := map[string]struct{}{"\"localPath\":\"/pathInDocker\"":{}}
对于这些中的每一个,生成的 docker 容器会尝试将映射键作为 docker 中的文件夹挂载,而不是 localhost 的挂载点。
我翻阅了文档,似乎唯一能找到的关于如何配置卷的内容就是这一行:
Volumes map[string]struct{} // List of volumes (mounts) used for the container
所以我的问题是如何配置它以便将本地文件夹安装到卷?
【问题讨论】: