tangled
alpha
login
or
join now
hailey.at
/
followgraph
0
fork
atom
this repo has no description
0
fork
atom
overview
issues
pulls
pipelines
dockercompose
hailey.at
2 months ago
345ef963
3933cd4d
+102
-13
1 changed file
expand all
collapse all
unified
split
docker-compose.yaml
+102
-13
docker-compose.yaml
···
1
1
volumes:
2
2
clickhouse_data: {}
3
3
+
zookeeper-data:
4
4
+
zookeeper-logs:
5
5
+
kafka-data:
6
6
+
tap-data:
3
7
4
8
services:
5
9
clickhouse:
···
21
25
timeout: 3s
22
26
retries: 5
23
27
24
24
-
# indexer:
25
25
-
# build: .
26
26
-
# ports:
27
27
-
# # metrics port
28
28
-
# - "6009:6009"
29
29
-
# depends_on:
30
30
-
# clickhouse:
31
31
-
# condition: service_healthy
32
32
-
# environment:
33
33
-
# KAFKA_BOOTSTRAP_SERVERS: "localhost:9092"
34
34
-
# KAFKA_INPUT_TOPIC: "tap-events"
35
35
-
#
36
36
-
# CLICKHOUSE_HOST: "clickhouse"
28
28
+
zookeeper:
29
29
+
image: confluentinc/cp-zookeeper:7.6.0
30
30
+
hostname: zookeeper
31
31
+
container_name: zookeeper
32
32
+
ports:
33
33
+
- "2181:2181"
34
34
+
environment:
35
35
+
ZOOKEEPER_CLIENT_PORT: 2181
36
36
+
ZOOKEEPER_TICK_TIME: 2000
37
37
+
volumes:
38
38
+
- zookeeper-data:/var/lib/zookeeper/data
39
39
+
- zookeeper-logs:/var/lib/zookeeper/log
40
40
+
41
41
+
kafka:
42
42
+
image: confluentinc/cp-kafka:7.6.0
43
43
+
hostname: kafka
44
44
+
container_name: kafka
45
45
+
depends_on:
46
46
+
- zookeeper
47
47
+
ports:
48
48
+
- "9092:9092"
49
49
+
- "9101:9101"
50
50
+
environment:
51
51
+
KAFKA_BROKER_ID: 1
52
52
+
KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
53
53
+
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
54
54
+
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092
55
55
+
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
56
56
+
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
57
57
+
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
58
58
+
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
59
59
+
KAFKA_JMX_PORT: 9101
60
60
+
KAFKA_JMX_HOSTNAME: localhost
61
61
+
KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'
62
62
+
healthcheck:
63
63
+
test:
64
64
+
[
65
65
+
"CMD",
66
66
+
"bash",
67
67
+
"-c",
68
68
+
"kafka-topics --bootstrap-server kafka:29092 --list",
69
69
+
]
70
70
+
volumes:
71
71
+
- kafka-data:/var/lib/kafka/data
72
72
+
73
73
+
tap:
74
74
+
image: ghcr.io/bluesky-social/indigo/tap:latest
75
75
+
hostname: tap
76
76
+
container_name: tap
77
77
+
depends_on:
78
78
+
kafka:
79
79
+
condition: service_healthy
80
80
+
ports:
81
81
+
- "2480:2480"
82
82
+
- "6010:6010"
83
83
+
environment:
84
84
+
TAP_BIND: ":2480"
85
85
+
TAP_FULL_NETWORK: true
86
86
+
TAP_DISABLE_ACKS: false
87
87
+
TAP_COLLECTION_FILTERS: "app.bsky.graph.follow"
88
88
+
TAP_METRICS_LISTEN: ":6010"
89
89
+
volumes:
90
90
+
- tap-data:/data
91
91
+
restart: unless-stopped
92
92
+
93
93
+
atkafka:
94
94
+
image: ghcr.io/haileyok/at-kafka:main-6f15f22
95
95
+
hostname: atkafka
96
96
+
container_name: atkafka
97
97
+
depends_on:
98
98
+
kafka:
99
99
+
condition: service_healthy
100
100
+
ports:
101
101
+
# metrics port
102
102
+
- "6011:6009"
103
103
+
command: ["tap-mode"]
104
104
+
environment:
105
105
+
ATKAFKA_TAP_HOST: "ws://tap:2480"
106
106
+
ATKAFKA_DISABLE_ACKS: false
107
107
+
ATKAFKA_BOOTSTRAP_SERVERS: "kafka:29092"
108
108
+
ATKAFKA_OUTPUT_TOPIC: "tap-events"
109
109
+
restart: unless-stopped
110
110
+
111
111
+
indexer:
112
112
+
build: .
113
113
+
ports:
114
114
+
- "6012:6009"
115
115
+
depends_on:
116
116
+
clickhouse:
117
117
+
condition: service_healthy
118
118
+
kafka:
119
119
+
condition: service_healthy
120
120
+
command: ["uv", "run", "indexer.py"]
121
121
+
environment:
122
122
+
KAFKA_BOOTSTRAP_SERVERS: "localhost:9092"
123
123
+
KAFKA_INPUT_TOPIC: "tap-events"
124
124
+
CLICKHOUSE_HOST: "clickhouse"
125
125
+
restart: unless-stopped