-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yaml
More file actions
94 lines (88 loc) · 2.26 KB
/
docker-compose.yaml
File metadata and controls
94 lines (88 loc) · 2.26 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# AOF Docker Compose Configuration
# For local development and testing
version: "3.8"
services:
# AOF Daemon - Main webhook server
aof-daemon:
build:
context: .
dockerfile: Dockerfile
container_name: aof-daemon
ports:
- "8080:8080"
environment:
- RUST_LOG=info,aofctl=info,aof_runtime=debug
- OPENAI_API_KEY=${OPENAI_API_KEY:-}
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-}
- GOOGLE_API_KEY=${GOOGLE_API_KEY:-}
# Slack integration
- SLACK_BOT_TOKEN=${SLACK_BOT_TOKEN:-}
- SLACK_SIGNING_SECRET=${SLACK_SIGNING_SECRET:-}
# Telegram integration
- TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN:-}
# Discord integration
- DISCORD_BOT_TOKEN=${DISCORD_BOT_TOKEN:-}
- DISCORD_APPLICATION_ID=${DISCORD_APPLICATION_ID:-}
volumes:
# Mount agent configurations
- ./agents:/app/agents:ro
# Mount daemon config
- ./config:/app/config:ro
# Persist checkpoints
- aof-checkpoints:/app/checkpoints
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 3s
retries: 3
start_period: 10s
restart: unless-stopped
networks:
- aof-network
# Redis for shared memory/state (optional)
redis:
image: redis:7-alpine
container_name: aof-redis
ports:
- "6379:6379"
volumes:
- aof-redis-data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 3s
retries: 3
restart: unless-stopped
networks:
- aof-network
profiles:
- with-redis
# PostgreSQL for persistent storage (optional)
postgres:
image: postgres:16-alpine
container_name: aof-postgres
environment:
- POSTGRES_USER=aof
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-aofpassword}
- POSTGRES_DB=aof
ports:
- "5432:5432"
volumes:
- aof-postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U aof"]
interval: 10s
timeout: 3s
retries: 3
restart: unless-stopped
networks:
- aof-network
profiles:
- with-postgres
volumes:
aof-checkpoints:
aof-redis-data:
aof-postgres-data:
networks:
aof-network:
driver: bridge