1

这是 API 的文档:https ://docs.docker.com/engine/api/v1.24/#containers 在其中您将看到对于创建容器方法,显示了标有“NetworkingConfig”的 JSON 部分

这部分根本没有描述,我不太清楚如何表达我需要的东西,这相当于 docker-compose:

services:
  myservice:
    networks:
      - mynetwork
networks:
  mynetwork:
    external: true

我怎样才能以编程方式完成上述操作?

4

1 回答 1

1

所以答案是:它比设置NetworkMode密钥更复杂(这有效但仅适用于一个网络)

要做到这一点:获取网络,获取容器,将它们绑定在一起。像这样的东西(适用于 dockerode v3.2.4+):

const Docker = require('dockerode');
const docker = new Docker();

var net = docker.getNetwork('your-external-network-name');
var cnt = docker.getContainer('your-container-name');

net.connect({Container: cnt.id}, function(err, data) {
  if (!err) console.log('we're good');
})
于 2017-05-07T04:32:20.973 回答