2

我用这些命令创建了一些网络:

docker network create --driver bridge my-network

我有一些已经使用 dockerfile 创建的 docker 映像。

在 docker 文档中,他们说您可以使用以下命令连接您的容器:

docker run --network=my-network -itd --name=mycontainer busybox

在我的 nodejs 中,我需要将这些参数传递给我的运行函数:

let options = ['some option']
docker.run('mycontainer', [], process.stdout, { Env: options }).then(data => {
                console.log(data)
            }).catch(err => { console.log(err) })

所以回到我的主要问题:如何将 docker 加入 docker 网络?

4

1 回答 1

1

最后一个参数“{ Env: options }”用于此目的。

它指的是 Docker API:https ://docs.docker.com/engine/api/v1.24/#31-containers 查看“创建容器”-> 请求的最后一部分是“NetworkingConfig”。你仍然需要在你的 JS 应用中找到好的语法

就像是 :

let options = ['some option']
docker.run('mycontainer', [], process.stdout, {
Env: options,
NetworkingConfig: {
      "EndpointsConfig": {
          "isolated_nw" : {
              "IPAMConfig": {
                  "IPv4Address":"172.20.30.33",
                  "IPv6Address":"2001:db8:abcd::3033",
                  "LinkLocalIPs":["169.254.34.68", "fe80::3468"]
              },
              "Links":["container_1", "container_2"],
              "Aliases":["server_x", "server_y"]
          }
      }
  }}).[...]
于 2019-12-09T14:38:03.080 回答