-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
65 lines (63 loc) · 2.04 KB
/
docker-compose.yml
File metadata and controls
65 lines (63 loc) · 2.04 KB
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
# HexBot docker-compose for multi-instance deployments.
#
# Layout on the host — everything for one bot lives in its own directory:
# config/libera/chanbot.json — per-bot config (nested by network)
# config/libera/chanbot-plugins.json
# config/libera/chanbot.env — per-bot secrets (chmod 600)
# config/rizon/enforcer.json
# config/rizon/enforcer.env
# data/libera-chanbot.db — per-bot database (created on first run)
# data/rizon-enforcer.db
#
# DCC port ranges must be unique per bot — both on the host (ports: mapping)
# and in each bot's dcc.port_range config. If a bot doesn't need DCC, drop its
# ports: block and set dcc.enabled=false in its config.
services:
hexbot-libera-chanbot:
build: .
container_name: hexbot-libera-chanbot
env_file: config/libera/chanbot.env
command: ['node_modules/.bin/tsx', 'src/index.ts', '--config=config/libera/chanbot.json']
ports:
- '49152-49171:49152-49171'
volumes:
- ./config:/app/config:ro
- ./plugins:/app/plugins:ro
- ./data:/app/data
restart: unless-stopped
healthcheck:
test:
[
'CMD',
'sh',
'-c',
'[ -f /tmp/.hexbot-healthy ] && [ $$(( $$(date +%s) - $$(stat -c %Y /tmp/.hexbot-healthy) )) -lt 120 ]',
]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s
hexbot-rizon-enforcer:
build: .
container_name: hexbot-rizon-enforcer
env_file: config/rizon/enforcer.env
command: ['node_modules/.bin/tsx', 'src/index.ts', '--config=config/rizon/enforcer.json']
ports:
- '49172-49191:49172-49191'
volumes:
- ./config:/app/config:ro
- ./plugins:/app/plugins:ro
- ./data:/app/data
restart: unless-stopped
healthcheck:
test:
[
'CMD',
'sh',
'-c',
'[ -f /tmp/.hexbot-healthy ] && [ $$(( $$(date +%s) - $$(stat -c %Y /tmp/.hexbot-healthy) )) -lt 120 ]',
]
interval: 30s
timeout: 5s
retries: 3
start_period: 30s