Files
clickhouse-cluster-example/docker-compose.yml
2025-04-22 16:13:43 +07:00

113 lines
3.0 KiB
YAML

version: '3'
services:
haproxy:
image: haproxy:latest
ports:
- "9001:9000"
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
depends_on:
- clickhouse1
- clickhouse2
- clickhouse3
- clickhouse4
zoo1:
image: zookeeper:latest
expose:
- "2181"
- "2888"
- "3888"
environment:
ZOO_MY_ID: "1"
ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo2:
image: zookeeper:latest
expose:
- "2181"
- "2888"
- "3888"
environment:
ZOO_MY_ID: "2"
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo3:
image: zookeeper:latest
expose:
- "2181"
- "2888"
- "3888"
environment:
ZOO_MY_ID: "3"
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181
clickhouse1:
image: yandex/clickhouse-server:latest
hostname: clickhouse1
expose:
- "9000"
depends_on:
- zoo1
- zoo2
- zoo3
volumes:
- ./config_1.xml:/etc/clickhouse-server/config.xml
- ./metrika.xml:/etc/clickhouse-server/metrika.xml
ulimits:
nofile:
soft: 262144
hard: 262144
clickhouse2:
image: yandex/clickhouse-server:latest
hostname: clickhouse2
expose:
- "9000"
depends_on:
- zoo1
- zoo2
- zoo3
volumes:
- ./config_2.xml:/etc/clickhouse-server/config.xml
- ./metrika.xml:/etc/clickhouse-server/metrika.xml
ulimits:
nofile:
soft: 262144
hard: 262144
clickhouse3:
image: yandex/clickhouse-server:latest
hostname: clickhouse3
expose:
- "9000"
depends_on:
- zoo1
- zoo2
- zoo3
volumes:
- ./config_3.xml:/etc/clickhouse-server/config.xml
- ./metrika.xml:/etc/clickhouse-server/metrika.xml
ulimits:
nofile:
soft: 262144
hard: 262144
clickhouse4:
image: yandex/clickhouse-server:latest
hostname: clickhouse4
expose:
- "9000"
depends_on:
- zoo1
- zoo2
- zoo3
volumes:
- ./config_4.xml:/etc/clickhouse-server/config.xml
- ./metrika.xml:/etc/clickhouse-server/metrika.xml
ulimits:
nofile:
soft: 262144
hard: 262144