将docker-compose与docker swarm一起使用

我正在使用docker 1.12.1 一个简单的docker-compose脚本。

version: '2'

services:

jenkins-slave:

build: ./slave

image: jenkins-slave:1.0

restart: always

ports:

- "22"

environment:

- "constraint:NODE==master1"

jenkins-master:

image: jenkins:2.7.1

container_name: jenkins-master

restart: always

ports:

- "8080:8080"

- "50000"

environment:

- "constraint:NODE==node1"

我使用运行该脚本docker-compose -p jenkins up

-d。这将创建我的2个容器,但仅在我的主容器上(从此处执行命令)创建容器。我希望在主机上创建一个,在节点上创建一个。我也尝试添加

networks:

jenkins_swarm:

driver: overlay

  networks:

- jenkins_swarm

每次服务后,但这都失败了:

Cannot create container for service jenkins-master: network jenkins_jenkins_swarm not found

当我执行网络创建时 docker network ls

有人可以通过docker-

compose帮助我在2个节点上部署2个容器。Swarm正在为我的“集群”工作。我按照本教程进行了验证。

回答:

Compose目前不支持Swarm Mode。

docker compose up主节点上运行时,Compose会docker run在Compose文件中发出服务命令,而不是docker

service

create-这就是为什么容器都在主节点上运行的原因。有关选项,请参见此答案。

第二点,网络在范围内1.12。如果检查您的网络,您会发现它是在群集级别创建的,但是Compose运行的是引擎级别的容器,看不到群集网络。

以上是 将docker-compose与docker swarm一起使用 的全部内容, 来源链接: utcz.com/qa/434983.html

回到顶部