Docker API - как мне подключиться к сети?
Это документация по API: https://docs.docker.com/engine/api/v1.24/, где вы увидите, что для метода создания контейнера отображается раздел JSON с надписью "NetworkingConfig"
этот раздел вообще не описан, и я не могу понять, как выразить то, что мне нужно, что эквивалентно docker-compose:
services:
myservice:
networks:
- mynetwork
networks:
mynetwork:
external: true
как я могу сделать вышеперечисленное программно?
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');
})