-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
63 lines (61 loc) · 2.18 KB
/
docker-compose.yml
File metadata and controls
63 lines (61 loc) · 2.18 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
# ═══════════════════════════════════════════════════════════════
# Tofu (豆腐) — Docker Compose
# ═══════════════════════════════════════════════════════════════
#
# Quick start:
# docker compose up -d
#
# With API key pre-configured:
# LLM_API_KEYS=sk-xxx docker compose up -d
#
# View logs:
# docker compose logs -f tofu
#
# Stop:
# docker compose down
#
# Upgrade:
# docker compose pull && docker compose up -d
#
# ═══════════════════════════════════════════════════════════════
services:
tofu:
build: .
# image: ghcr.io/rangehow/tofu:latest # uncomment after publishing
container_name: tofu
restart: unless-stopped
ports:
- "${PORT:-15000}:15000"
volumes:
# Persistent data — database, configs, uploads survive restarts
- tofu-data:/app/data
- tofu-logs:/app/logs
- tofu-uploads:/app/uploads
environment:
- PORT=15000
- BIND_HOST=0.0.0.0
# ── LLM API (optional — can also configure via Settings UI) ──
- LLM_API_KEYS=${LLM_API_KEYS:-}
- LLM_BASE_URL=${LLM_BASE_URL:-}
- LLM_MODEL=${LLM_MODEL:-}
# ── Database (optional — defaults to data/chatui.db) ──
- CHATUI_DB_PATH=${CHATUI_DB_PATH:-}
# ── Proxy (if needed) ──
- HTTP_PROXY=${HTTP_PROXY:-}
- HTTPS_PROXY=${HTTPS_PROXY:-}
- PROXY_BYPASS_DOMAINS=${PROXY_BYPASS_DOMAINS:-}
# ── Feishu bot (optional) ──
- FEISHU_APP_ID=${FEISHU_APP_ID:-}
- FEISHU_APP_SECRET=${FEISHU_APP_SECRET:-}
# ── Trading (disabled by default) ──
- TRADING_ENABLED=${TRADING_ENABLED:-0}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:15000/"]
interval: 30s
timeout: 5s
start_period: 30s
retries: 3
volumes:
tofu-data:
tofu-logs:
tofu-uploads: