我目前正在使用Docker Engine 1.11,我正在调查是否可以移动到Docker 1.12并使用Swarm。我目前正在使用Docker运行50多个Bamboo代理,所有这些代理都需要将端口映射到服务器上的端口。例如,每个docker容器都需要有端口4000,所以当我运行Docker时,我会 -
Docker run -p 10000:4000 myimg
Docker run -p 10001:4000 myimg
Docker run -p 10002:4000 myimg
Docker run -p 10003:4000 myimg
在Docker Swarm中,根据我的理解,我会运行以下命令将我的服务扩展到50个容器
docker service scale helloworld=5
但是,如果我这样做,那么他们都会尝试映射到同一个端口。我怎么能做到这一点?有可能吗?
答案 0 :(得分:1)
不,你不能。
它只是Docker服务提供的一个关键功能,即单个端口可以映射到多个容器(服务发现)
另一个是容器发生故障时,swarm会启动一个新的。(自我修复)
我对Bamboo一无所知,所以我无法告诉你是否可以通过群模式运行竹子服务。