2 개의 Linux 컴퓨터에서 docker swarm 클러스터를 만듭니다. 그러나 docker-upose -d를 사용하여 컨테이너를 시작하면 일부 오류가 발생했습니다.오버레이 네트워크 모드로 Docker Swarm 클러스터를 설정하는 방법
이 내 고정 표시기 정보입니다 : 이것은 내 고정 표시기 - compose.yml
version: '2'
services:
rabbitmq:
image: rabbitmq
ports:
- "5672:5672"
- "15672:15672"
network_mode: "bridge"
config-service:
image: ozms/config-service
ports:
- "8888:8888"
volumes:
- ~/ozms/configs:/var/tmp/
- ~/ozms/log:/log
network_mode: "bridge"
labels:
- "affinity:image==ozms/config-service"
eureka-service:
image: ozms/eureka-service
ports:
- "8761:8761"
volumes:
- ~/ozms/log:/log
links:
- config-service
- rabbitmq
environment:
- SPRING_RABBITMQ_HOST=rabbitmq
network_mode: "bridge"
내가 docker-compose up -d
간부 인 후, 서비스 rabbitmq
및 config-service
이 시작될 수 있지만 eureka-service
가 발생
Containers: 4
Running: 4
Paused: 0
Stopped: 0
Images: 28
Server Version: swarm/1.2.5
Role: primary
Strategy: spread
Filters: health, port, containerslots, dependency, affinity, constraint
Nodes: 2
ozcluster01: 192.168.168.41:2375
└ ID: CKCO:JGAA:PIOM:F4PL:6TIH:EQFY:KZ6X:B64Q:HRFH:FSTT:MLJT:BJUY
└ Status: Healthy
└ Containers: 2 (2 Running, 0 Paused, 0 Stopped)
└ Reserved CPUs: 0/2
└ Reserved Memory: 0 B/3.79 GiB
└ Labels: executiondriver=native-0.2, kernelversion=3.10.0- 327.13.1.el7.x86_64, operatingsystem=CentOS Linux 7 (Core), storagedriver=devicemapper
└ UpdatedAt: 2016-11-04T02:05:08Z
└ ServerVersion: 1.10.3
ozcluster02: 192.168.168.42:2375
└ ID: 73GR:6M7W:GMWD:D3DO:UASW:YHJ2:BTH6:DCO5:NJM6:SXPN:PXTY:3NHI
└ Status: Healthy
└ Containers: 2 (2 Running, 0 Paused, 0 Stopped)
└ Reserved CPUs: 0/2
└ Reserved Memory: 64 MiB/3.79 GiB
└ Labels: executiondriver=native-0.2, kernelversion=3.10.0-327.10.1.el7.x86_64, operatingsystem=CentOS Linux 7 (Core), storagedriver=devicemapper
└ UpdatedAt: 2016-11-04T02:05:06Z
└ ServerVersion: 1.10.3
입니다 오류 :
[[email protected] ozms]$ docker-compose up -d
Creating ozms_config-service_1
Creating ozms_rabbitmq_1
Creating ozms_eureka-service_1
ERROR: Unable to find a node that satisfies the following conditions
[port 8761 (Bridge mode)]
[available container slots]
[--link=ozms_config-service_1:config-service --link=ozms_config-service_1:config-service_1 --link=ozms_config-service_1:ozms_config-service_1 --link=ozms_rabbitmq_1:ozms_rabbitmq_1 --link=ozms_rabbitmq_1:rabbitmq --link=ozms_rabbitmq_1:rabbitmq_1]
가 내가 docker ps
을 간부 인 :
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
871afc8e1eb6 rabbitmq "docker-entrypoint.sh" 2 minutes ago Up 2 minutes 4369/tcp, 192.168.168.41:5672->5672/tcp, 5671/tcp, 25672/tcp, 192.168.168.41:15672->15672/tcp ozcluster01/ozms_rabbitmq_1
8ef3f666a7b9 ozms/config-service "java -Djava.security" 2 minutes ago Up 2 minutes 192.168.168.42:8888->8888/tcp ozcluster02/ozms_config-service_1
내가 그 rabbitmq 기계 ozculster01
에서 시작되어 발견, 구성 서비스는 컴퓨터 ozculster02
에서 시작합니다.
도커 작성시 config-service
이 시작되면 links
이 없으므로 성공적으로 시작할 수 있습니다. ozculster02
기계에 eureka-service
을 시작하면 links
에서 rabbitmq
까지이지만 rabbitmq
서비스는 ozculster01
기계에 있고 오류가 발생했습니다.
문제를 해결하려면 어떻게해야합니까?
Docker Swarm 클러스터에 network_mode: "bridge"
을 사용하는 것이 맞습니까?