9

假设我有一个名为“mynet”的网络,我想启动一个 IP 地址绑定到 192.168.23.2 的容器。

我开始的代码是:

import docker
c = docker.from_env()
c.containers.run('containername', 'sh some_script.sh', network='mynet')

我从这里做什么?我正在有效地寻找--ipdocker run.

4

1 回答 1

6

您需要创建一个网络并将容器连接到它:

container = c.containers.run('containername', 'sh some_script.sh')

ipam_pool = docker.types.IPAMPool(
    subnet='192.168.23.0/24',
    gateway='192.168.23.1'
)
ipam_config = docker.types.IPAMConfig(
    pool_configs=[ipam_pool]
)
mynet= c.network.create(
    "network1",
    driver="bridge",
    ipam=ipam_config
)

ip = {"ipv4_address": "192.168.23.2"}
mynet.connect(container,ip)
于 2017-10-16T00:26:00.180 回答