forked from teamgram/teamgram-server
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yaml
72 lines (67 loc) · 2.15 KB
/
docker-compose.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
version: "3"
services:
etcd:
image: quay.io/coreos/etcd:v3.5.2
entrypoint: /usr/local/bin/etcd
restart: always
volumes:
- etcd_data:/etcd_data
ports:
- 127.0.0.1:2379:2379
- 127.0.0.1:2380:2380
command: '-data-dir=/etcd-data --name etcd --initial-advertise-peer-urls http://${HostIP:-127.0.0.1}:2380 --listen-peer-urls http://0.0.0.0:2380 --advertise-client-urls http://${HostIP:-127.0.0.1}:2379 --listen-client-urls http://0.0.0.0:2379 --initial-cluster etcd=http://${HostIP:-127.0.0.1}:2380'
redis:
image: redis
ports:
- 127.0.0.1:6379:6379
zookeeper:
image: confluentinc/cp-zookeeper:7.0.1
container_name: zookeeper
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
broker:
image: confluentinc/cp-kafka:7.0.1
container_name: broker
ports:
# To learn about configuring Kafka for access across networks see
# https://www.confluent.io/blog/kafka-client-cannot-connect-to-broker-on-aws-on-docker-etc/
- 127.0.0.1:9092:9092
depends_on:
- zookeeper
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_INTERNAL:PLAINTEXT
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092,PLAINTEXT_INTERNAL://broker:29092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
mysql:
image: 'mysql:5.7'
restart: always
ports:
- 127.0.0.1:3306:3306
volumes:
- mysql_data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:-my_root_secret}
MYSQL_DATABASE: teamgram
MYSQL_USER: teamgram
MYSQL_PASSWORD: ${DB_PASSWORD:-my_db_secret}
# MYSQL_ALLOW_EMPTY_PASSWORD: "true"
minio:
image: minio/minio
ports:
- "9000:9000"
- "9001:9001"
volumes:
- minio_data:/data
environment:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: miniostorage
command: server /data --console-address ":9001"
volumes:
minio_data:
etcd_data:
mysql_data: