You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
449 lines
11 KiB
YAML
449 lines
11 KiB
YAML
---
|
|
# Source: tidb-docker-compose/templates/docker-compose.yml
|
|
# dashboard-installer has been deleted, because we don't need it any more in docker-compose model
|
|
version: '2.1'
|
|
|
|
services:
|
|
pd0:
|
|
image: pingcap/pd:latest
|
|
ports:
|
|
- "2379"
|
|
volumes:
|
|
- ./config/pd.toml:/pd.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- --name=pd0
|
|
- --client-urls=http://0.0.0.0:2379
|
|
- --peer-urls=http://0.0.0.0:2380
|
|
- --advertise-client-urls=http://pd0:2379
|
|
- --advertise-peer-urls=http://pd0:2380
|
|
- --initial-cluster=pd0=http://pd0:2380,pd1=http://pd1:2380,pd2=http://pd2:2380
|
|
- --data-dir=/data/pd0
|
|
- --config=/pd.toml
|
|
- --log-file=/logs/pd0.log
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
pd1:
|
|
image: pingcap/pd:latest
|
|
ports:
|
|
- "2379"
|
|
volumes:
|
|
- ./config/pd.toml:/pd.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- --name=pd1
|
|
- --client-urls=http://0.0.0.0:2379
|
|
- --peer-urls=http://0.0.0.0:2380
|
|
- --advertise-client-urls=http://pd1:2379
|
|
- --advertise-peer-urls=http://pd1:2380
|
|
- --initial-cluster=pd0=http://pd0:2380,pd1=http://pd1:2380,pd2=http://pd2:2380
|
|
- --data-dir=/data/pd1
|
|
- --config=/pd.toml
|
|
- --log-file=/logs/pd1.log
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
pd2:
|
|
image: pingcap/pd:latest
|
|
ports:
|
|
- "2379"
|
|
volumes:
|
|
- ./config/pd.toml:/pd.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- --name=pd2
|
|
- --client-urls=http://0.0.0.0:2379
|
|
- --peer-urls=http://0.0.0.0:2380
|
|
- --advertise-client-urls=http://pd2:2379
|
|
- --advertise-peer-urls=http://pd2:2380
|
|
- --initial-cluster=pd0=http://pd0:2380,pd1=http://pd1:2380,pd2=http://pd2:2380
|
|
- --data-dir=/data/pd2
|
|
- --config=/pd.toml
|
|
- --log-file=/logs/pd2.log
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
tikv0:
|
|
image: pingcap/tikv:latest
|
|
volumes:
|
|
- ./config/tikv.toml:/tikv.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- --addr=0.0.0.0:20160
|
|
- --advertise-addr=tikv0:20160
|
|
- --data-dir=/data/tikv0
|
|
- --pd=pd0:2379,pd1:2379,pd2:2379
|
|
- --config=/tikv.toml
|
|
- --log-file=/logs/tikv0.log
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
tikv1:
|
|
image: pingcap/tikv:latest
|
|
volumes:
|
|
- ./config/tikv.toml:/tikv.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- --addr=0.0.0.0:20160
|
|
- --advertise-addr=tikv1:20160
|
|
- --data-dir=/data/tikv1
|
|
- --pd=pd0:2379,pd1:2379,pd2:2379
|
|
- --config=/tikv.toml
|
|
- --log-file=/logs/tikv1.log
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
tikv2:
|
|
image: pingcap/tikv:latest
|
|
volumes:
|
|
- ./config/tikv.toml:/tikv.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- --addr=0.0.0.0:20160
|
|
- --advertise-addr=tikv2:20160
|
|
- --data-dir=/data/tikv2
|
|
- --pd=pd0:2379,pd1:2379,pd2:2379
|
|
- --config=/tikv.toml
|
|
- --log-file=/logs/tikv2.log
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
pump0:
|
|
image: pingcap/tidb-binlog:latest
|
|
volumes:
|
|
- ./config/pump.toml:/pump.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- /pump
|
|
- --addr=0.0.0.0:8250
|
|
- --advertise-addr=pump0:8250
|
|
- --data-dir=/data/pump0
|
|
- --log-file=/logs/pump0.log
|
|
- --node-id=pump0
|
|
- --pd-urls=http://pd0:2379,http://pd1:2379,http://pd2:2379
|
|
- --config=/pump.toml
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
restart: on-failure
|
|
|
|
pump1:
|
|
image: pingcap/tidb-binlog:latest
|
|
volumes:
|
|
- ./config/pump.toml:/pump.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- /pump
|
|
- --addr=0.0.0.0:8250
|
|
- --advertise-addr=pump1:8250
|
|
- --data-dir=/data/pump1
|
|
- --log-file=/logs/pump1.log
|
|
- --node-id=pump1
|
|
- --pd-urls=http://pd0:2379,http://pd1:2379,http://pd2:2379
|
|
- --config=/pump.toml
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
restart: on-failure
|
|
|
|
pump2:
|
|
image: pingcap/tidb-binlog:latest
|
|
volumes:
|
|
- ./config/pump.toml:/pump.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- /pump
|
|
- --addr=0.0.0.0:8250
|
|
- --advertise-addr=pump2:8250
|
|
- --data-dir=/data/pump2
|
|
- --log-file=/logs/pump2.log
|
|
- --node-id=pump2
|
|
- --pd-urls=http://pd0:2379,http://pd1:2379,http://pd2:2379
|
|
- --config=/pump.toml
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
restart: on-failure
|
|
|
|
drainer:
|
|
image: pingcap/tidb-binlog:latest
|
|
volumes:
|
|
- ./config/drainer.toml:/drainer.toml:ro
|
|
- ./data:/data
|
|
- ./logs:/logs
|
|
command:
|
|
- /drainer
|
|
- --addr=0.0.0.0:8249
|
|
- --data-dir=/data/data.drainer
|
|
- --log-file=/logs/drainer.log
|
|
- --pd-urls=http://pd0:2379,http://pd1:2379,http://pd2:2379
|
|
- --config=/drainer.toml
|
|
- --initial-commit-ts=0
|
|
- --dest-db-type=kafka
|
|
depends_on:
|
|
- "pd0"
|
|
- "pd1"
|
|
- "pd2"
|
|
- "kafka0"
|
|
- "kafka1"
|
|
- "kafka2"
|
|
restart: on-failure
|
|
|
|
zoo0:
|
|
image: zookeeper:latest
|
|
ports:
|
|
- "2181:2181"
|
|
environment:
|
|
ZOO_MY_ID: 1
|
|
ZOO_PORT: 2181
|
|
ZOO_SERVERS: server.1=zoo0:2888:3888 server.2=zoo1:2888:3888 server.3=zoo2:2888:3888
|
|
volumes:
|
|
- ./data/zoo0/data:/data
|
|
- ./data/zoo0/datalog:/datalog
|
|
restart: on-failure
|
|
|
|
zoo1:
|
|
image: zookeeper:latest
|
|
ports:
|
|
- "2182:2182"
|
|
environment:
|
|
ZOO_MY_ID: 2
|
|
ZOO_PORT: 2182
|
|
ZOO_SERVERS: server.1=zoo0:2888:3888 server.2=zoo1:2888:3888 server.3=zoo2:2888:3888
|
|
volumes:
|
|
- ./data/zoo1/data:/data
|
|
- ./data/zoo1/datalog:/datalog
|
|
restart: on-failure
|
|
|
|
zoo2:
|
|
image: zookeeper:latest
|
|
ports:
|
|
- "2183:2183"
|
|
environment:
|
|
ZOO_MY_ID: 3
|
|
ZOO_PORT: 2183
|
|
ZOO_SERVERS: server.1=zoo0:2888:3888 server.2=zoo1:2888:3888 server.3=zoo2:2888:3888
|
|
volumes:
|
|
- ./data/zoo2/data:/data
|
|
- ./data/zoo2/datalog:/datalog
|
|
restart: on-failure
|
|
|
|
kafka0:
|
|
image: wurstmeister/kafka:2.12-2.1.1
|
|
ports:
|
|
- "9092:9092"
|
|
environment:
|
|
KAFKA_BROKER_ID: 1
|
|
KAFKA_LOG_DIRS: /data/kafka-logs
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka0:9092
|
|
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
|
|
KAFKA_ZOOKEEPER_CONNECT: zoo0:2181,zoo1:2182,zoo2:2183
|
|
volumes:
|
|
- ./data/kafka-logs/kafka0:/data/kafka-logs
|
|
- ./logs/kafka0:/opt/kafka/logs
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
depends_on:
|
|
- "zoo0"
|
|
- "zoo1"
|
|
- "zoo2"
|
|
restart: on-failure
|
|
kafka1:
|
|
image: wurstmeister/kafka:2.12-2.1.1
|
|
ports:
|
|
- "9093:9093"
|
|
environment:
|
|
KAFKA_BROKER_ID: 2
|
|
KAFKA_LOG_DIRS: /data/kafka-logs
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka1:9093
|
|
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9093
|
|
KAFKA_ZOOKEEPER_CONNECT: zoo0:2181,zoo1:2182,zoo2:2183
|
|
volumes:
|
|
- ./data/kafka-logs/kafka1:/data/kafka-logs
|
|
- ./logs/kafka1:/opt/kafka/logs
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
depends_on:
|
|
- "zoo0"
|
|
- "zoo1"
|
|
- "zoo2"
|
|
restart: on-failure
|
|
kafka2:
|
|
image: wurstmeister/kafka:2.12-2.1.1
|
|
ports:
|
|
- "9094:9094"
|
|
environment:
|
|
KAFKA_BROKER_ID: 3
|
|
KAFKA_LOG_DIRS: /data/kafka-logs
|
|
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka2:9094
|
|
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9094
|
|
KAFKA_ZOOKEEPER_CONNECT: zoo0:2181,zoo1:2182,zoo2:2183
|
|
volumes:
|
|
- ./data/kafka-logs/kafka2:/data/kafka-logs
|
|
- ./logs/kafka2:/opt/kafka/logs
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
depends_on:
|
|
- "zoo0"
|
|
- "zoo1"
|
|
- "zoo2"
|
|
restart: on-failure
|
|
|
|
tidb:
|
|
image: pingcap/tidb:latest
|
|
ports:
|
|
- "4000:4000"
|
|
- "10080:10080"
|
|
volumes:
|
|
- ./config/tidb.toml:/tidb.toml:ro
|
|
- ./logs:/logs
|
|
command:
|
|
- --store=tikv
|
|
- --path=pd0:2379,pd1:2379,pd2:2379
|
|
- --config=/tidb.toml
|
|
- --log-file=/logs/tidb.log
|
|
- --advertise-address=tidb
|
|
- --enable-binlog=true
|
|
depends_on:
|
|
- "tikv0"
|
|
- "tikv1"
|
|
- "tikv2"
|
|
- "pump0"
|
|
- "pump1"
|
|
- "pump2"
|
|
# sysctls:
|
|
# net.core.somaxconn: 32768
|
|
# ulimits:
|
|
# nofile:
|
|
# soft: 1000000
|
|
# hard: 1000000
|
|
restart: on-failure
|
|
|
|
tispark-master:
|
|
image: pingcap/tispark:latest
|
|
command:
|
|
- /opt/spark/sbin/start-master.sh
|
|
volumes:
|
|
- ./config/spark-defaults.conf:/opt/spark/conf/spark-defaults.conf:ro
|
|
environment:
|
|
SPARK_MASTER_PORT: 7077
|
|
SPARK_MASTER_WEBUI_PORT: 8080
|
|
ports:
|
|
- "7077:7077"
|
|
- "8080:8080"
|
|
depends_on:
|
|
- "tikv0"
|
|
- "tikv1"
|
|
- "tikv2"
|
|
restart: on-failure
|
|
tispark-slave0:
|
|
image: pingcap/tispark:latest
|
|
command:
|
|
- /opt/spark/sbin/start-slave.sh
|
|
- spark://tispark-master:7077
|
|
volumes:
|
|
- ./config/spark-defaults.conf:/opt/spark/conf/spark-defaults.conf:ro
|
|
environment:
|
|
SPARK_WORKER_WEBUI_PORT: 38081
|
|
ports:
|
|
- "38081:38081"
|
|
depends_on:
|
|
- tispark-master
|
|
restart: on-failure
|
|
|
|
tidb-vision:
|
|
image: pingcap/tidb-vision:latest
|
|
environment:
|
|
PD_ENDPOINT: pd0:2379
|
|
ports:
|
|
- "8010:8010"
|
|
restart: on-failure
|
|
pushgateway:
|
|
image: prom/pushgateway:v0.3.1
|
|
command:
|
|
- --log.level=error
|
|
restart: on-failure
|
|
|
|
prometheus:
|
|
user: root
|
|
image: prom/prometheus:v2.2.1
|
|
command:
|
|
- --log.level=error
|
|
- --storage.tsdb.path=/data/prometheus
|
|
- --config.file=/etc/prometheus/prometheus.yml
|
|
ports:
|
|
- "9090:9090"
|
|
volumes:
|
|
- ./config/prometheus.yml:/etc/prometheus/prometheus.yml:ro
|
|
- ./config/pd.rules.yml:/etc/prometheus/pd.rules.yml:ro
|
|
- ./config/tikv.rules.yml:/etc/prometheus/tikv.rules.yml:ro
|
|
- ./config/tidb.rules.yml:/etc/prometheus/tidb.rules.yml:ro
|
|
- ./data:/data
|
|
restart: on-failure
|
|
grafana:
|
|
image: grafana/grafana:5.3.0
|
|
user: "0"
|
|
environment:
|
|
GF_LOG_LEVEL: error
|
|
GF_PATHS_PROVISIONING: /etc/grafana/provisioning
|
|
GF_PATHS_CONFIG: /etc/grafana/grafana.ini
|
|
ports:
|
|
- "3000:3000"
|
|
volumes:
|
|
- ./config/grafana:/etc/grafana
|
|
- ./config/dashboards:/tmp/dashboards
|
|
- ./data/grafana:/var/lib/grafana
|
|
restart: on-failure
|