运行Docker 18.09.1,API 1.39,并尝试将容器的网络置于主机模式,以便蓝牙正常工作。当我从CLI启动容器时,一切运行正常:
config := &container.Config{
Cmd: []string{"my-command"},
Hostname: "mycontainer",
Image: imageName,
}
hostConfig := &container.HostConfig{
AutoRemove: true,
NetworkMode: "host",
}
container, err := cli.ContainerCreate(*ctx, config, hostConfig, nil, "mycontainer")
当我尝试使用Go API启动此容器时,网络似乎设置不正确,导致我的容器死亡。
nil
很明显,我缺少了某物,但是我看不到那是什么。因为我指定了网络模式,我是否需要网络配置({{1}的ContainerCreate
参数)?
答案 0 :(得分:2)
我在发布问题时就抓住了我的问题,所以我将分享它,因为在任何文档中都没有明确指出。使用host
网络模式时,您的容器配置中不应包含主机名。
更改此内容
config := &container.Config{
Cmd: []string{"my-command"},
Hostname: "mycontainer",
Image: imageName,
}
...对此:
config := &container.Config{
Cmd: []string{"my-command"},
Image: imageName,
}
花了全部时间。