使用1.9,有没有办法直接用两个或多个网络接口启动容器?
您可以在使用"docker network connect"启动容器后执行此操作,但这意味着该进程已在运行,可能会错过新进程的创建.
这个问题是关于docker和多个网络接口的搜索.虽然不是问题中的必需版本,但我在这里留下一些信息:
使用Docker 1.12+,可以向docker容器添加多个网络接口,但需要首先创建容器,然后在启动容器之前连接第二个(和子序列)网络NIC:
$ docker create --network=network1 --name container_name containerimage:latest $ docker network connect network2 container_name $ docker start container_name
首先需要创建网络:
$ docker network create --driver=bridge network1 --subnet=172.19.0.0/24 $ docker network create --driver=bridge network2 --subnet=172.19.1.0/24
此外,您可以使用docker run中的--network = host参数启动连接dockerhost网络接口的容器:
$ docker run --net=host containerimage:latest
正如@gesellix回答的那样,目前还不可能.
您可以在https://github.com/docker/docker/issues/17750下找到此问题
这方面有一些待定的改进.正如我从讨论中看到的那样 - 当前的想法是创建容器(使用docker create),连接网络(docker network connect)然后启动(docker start).
您可以在https://github.com/docker/docker/pull/17796的评论中查看推理
UPD:#17750已关闭,将在1.10中提供