Docker API-如何加入网络?
这是API的文档: 您将看到,对于createcontainer方法,将显示标记为“NetworkingConfig”的JSON部分 本节完全没有描述,我也不知道如何表达我的需求,这相当于docker撰写:Docker API-如何加入网络?,docker,docker-compose,docker-api,Docker,Docker Compose,Docker Api,这是API的文档: 您将看到,对于createcontainer方法,将显示标记为“NetworkingConfig”的JSON部分 本节完全没有描述,我也不知道如何表达我的需求,这相当于docker撰写: services: myservice: networks: - mynetwork networks: mynetwork: external: true 如何通过编程实现上述功能?因此答案是:这比只设置网络模式键更复杂(该键仅适用于一个网络) 要做到
services:
myservice:
networks:
- mynetwork
networks:
mynetwork:
external: true
如何通过编程实现上述功能?因此答案是:这比只设置
网络模式
键更复杂(该键仅适用于一个网络)
要做到这一点:获取网络,获取容器,将它们绑定在一起。类似这样的内容(适用于dockerode v3.2.4+):
当您调用
POST containers/create
时,您将通过网络配置传递NetworkingConfig
,但在您必须创建网络之前POST/networks/create
ja,我知道。我不知道的是详细信息(没有相关文档),所以我只需声明网络名称,例如NetworkingConfig:{EndpointsConfig:{'my-network-name':{}}}}
?检查我的链接并搜索'NetworkingConfig',您将看到一个json示例。我用python中的docker api impl指导自己:和官方文档一起看哪些参数是可选的。
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');
})