10

我知道 docker-compose 与 docker-swarm (现在是旧版)能够在一个节点上共同安排一些服务(使用依赖过滤器,如链接)

我想知道这种协同调度是否可以使用现代 docker 引擎群模式和 Docker 1.13 中引入的新堆栈部署

在 docker-compose 文件版本 3 中,据说在集群中部署堆栈时链接会被忽略,因此显然链接不是解决方案。

我们有一堆服务器来运行批量短期运行的作业,它们之间的网络速度不是很高。我们希望在一台服务器上运行每个批处理作业(由多个容器组成)以避免网络开销。这个功能是在 docker stack 还是 docker swarm 模式下实现的,还是我们应该使用传统的 docker-swarm?

此外,我在放置策略中找不到与另一个容器的联合调度。

4

2 回答 2

0

@Roman:你是对的。

要部署到特定节点,您需要使用放置策略:

version: '3'
services:

  job1:
    image: example/job1
    deploy:
      placement:
        node.hostname: node-1
    networks:
      - example

  job2:
    image: example/job2
   deploy:
      placement:
        node.hostname: node-1
    networks:
      - example

networks:
  example:
    driver: overlay
于 2017-02-16T09:33:01.220 回答
-2

你仍然可以使用depends_on

dockerize也值得一看。

于 2017-02-03T17:33:05.273 回答