depends_on:
- kafka-0
+ mongo:
+ image: mongo:4.4.13
+ volumes:
+ - ./0001.sh:/docker-entrypoint-initdb.d/0001.sh:ro
+ - ./chatRoomTo.json:/docker-entrypoint-initdb.d/chatRoomTo.json:ro
+ ports:
+ - 27017:27017
+
haproxy:
image: haproxy:2.7
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
+ - ./sharding.map:/usr/local/etc/haproxy/sharding.map:ro
sysctls:
net.ipv4.ip_unprivileged_port_start: 0
ports:
- - 8080:80
+ - 8080:8400
+ - 8401:8401
- 8404:8404
- web1:
- image: nginx:1.17
- web2:
- image: nginx:1.17
- web3:
- image: nginx:1.17
+ backend-1:
+ image: juplo/chat-backend:0.0.1-SNAPSHOT
+ environment:
+ chat.backend.inmemory.sharding-strategy: kafkalike
+ chat.backend.inmemory.num-shards: 10
+ chat.backend.inmemory.owned-shards: 1, 3, 4, 9
+ chat.backend.inmemory.storage-strategy: mongodb
+ spring.data.mongodb.host: mongo
+ spring.data.mongodb.database: test
+ ports:
+ - 8081:8080
+ backend-2:
+ image: juplo/chat-backend:0.0.1-SNAPSHOT
+ environment:
+ chat.backend.inmemory.sharding-strategy: kafkalike
+ chat.backend.inmemory.num-shards: 10
+ chat.backend.inmemory.owned-shards: 0, 2, 7
+ chat.backend.inmemory.storage-strategy: mongodb
+ spring.data.mongodb.host: mongo
+ spring.data.mongodb.database: test
+ ports:
+ - 8082:8080
+ backend-3:
+ image: juplo/chat-backend:0.0.1-SNAPSHOT
+ environment:
+ chat.backend.inmemory.sharding-strategy: kafkalike
+ chat.backend.inmemory.num-shards: 10
+ chat.backend.inmemory.owned-shards: 5, 6, 8
+ chat.backend.inmemory.storage-strategy: mongodb
+ spring.data.mongodb.host: mongo
+ spring.data.mongodb.database: test
+ ports:
+ - 8083:8080
setup:
image: juplo/toolbox