-
Notifications
You must be signed in to change notification settings - Fork 121
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
79 lines (67 loc) Β· 3.93 KB
/
docker-compose.yml
File metadata and controls
79 lines (67 loc) Β· 3.93 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
# ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Zylos β Docker Compose
#
# Quick start:
# 1. Set environment variables below (or use a .env file in this directory)
# 2. docker compose up -d
# 3. docker compose logs -f
#
# Upgrading:
# docker compose pull && docker compose up -d
# ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
services:
zylos:
image: ghcr.io/zylos-ai/zylos-core:latest
container_name: zylos
restart: unless-stopped
# ββ Authentication (required β choose ONE) ββββββββββββββββββββββββββββββ
environment:
# Option A: Claude Code OAuth token (Pro/Max subscription)
CLAUDE_CODE_OAUTH_TOKEN: ${CLAUDE_CODE_OAUTH_TOKEN:-}
# Option B: Anthropic API key (usage-based billing)
ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-}
# ββ Core config βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
TZ: ${TZ:-UTC}
CLAUDE_BYPASS_PERMISSIONS: ${CLAUDE_BYPASS_PERMISSIONS:-true}
# ββ Web console βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Bind to 0.0.0.0 inside container so ports are accessible from host
WEB_CONSOLE_BIND: "0.0.0.0"
ZYLOS_WEB_PASSWORD: ${ZYLOS_WEB_PASSWORD:-}
# ββ Channel tokens (optional) βββββββββββββββββββββββββββββββββββββββββ
TELEGRAM_BOT_TOKEN: ${TELEGRAM_BOT_TOKEN:-}
LARK_APP_ID: ${LARK_APP_ID:-}
LARK_APP_SECRET: ${LARK_APP_SECRET:-}
# ββ Ports ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
ports:
# Web console (default: 3456)
- "${WEB_CONSOLE_PORT:-3456}:3456"
# Caddy / reverse proxy (optional, set CADDY_ENABLED=true in .env)
- "${HTTP_PORT:-8080}:8080"
# ββ Volumes βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
volumes:
# Entire zylos workspace β persists .env, memory, components, logs, etc.
- zylos-data:/home/zylos/zylos
# Claude Code settings and auth tokens
- claude-config:/home/zylos/.claude
# Optional: mount your own .env instead of relying on environment block
# - ./zylos.env:/home/zylos/zylos/.env:ro
# ββ Health ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
healthcheck:
test: ["CMD", "pm2", "list"]
interval: 30s
timeout: 10s
retries: 3
start_period: 600s
# ββ Resources (optional, tune for your host) ββββββββββββββββββββββββββββββ
# deploy:
# resources:
# limits:
# memory: 2g
# reservations:
# memory: 512m
# ββ Named volumes βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
volumes:
zylos-data:
driver: local
claude-config:
driver: local