-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathcompose.yaml
More file actions
44 lines (37 loc) · 1.25 KB
/
compose.yaml
File metadata and controls
44 lines (37 loc) · 1.25 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
services:
claude-api:
build: .
ports:
- "${PORT:-8000}:${PORT:-8000}" # HTTP API
- "${HTTPS_PORT:-8443}:${HTTPS_PORT:-8443}" # HTTPS Admin/Auth
environment:
# Admin password for token exchange
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-changeme}
# Your Claude OAuth token (required)
# Get from: https://claude.ai/settings/oauth
- CLAUDE_CODE_OAUTH_TOKEN=${CLAUDE_CODE_OAUTH_TOKEN}
# Optional settings
- NODE_ENV=${NODE_ENV:-production}
- PORT=${PORT:-8000}
- HTTPS_PORT=${HTTPS_PORT:-8443}
volumes:
# Persist API key mappings
- ./data:/app/data
# Docker volume for persistent Claude CLI authentication
- claude-auth:/home/claude/.claude
# Optional: Use custom certificates
# - ./certs:/app/certs
# Development: Mount source for hot reload
# - ./src:/app/src:ro
restart: unless-stopped
# Optional: Cloudflare Tunnel (for future production use)
# cloudflared:
# image: cloudflare/cloudflared:latest
# command: tunnel --no-autoupdate run
# environment:
# - TUNNEL_TOKEN=${CLOUDFLARE_TUNNEL_TOKEN}
# depends_on:
# - claude-api
# restart: unless-stopped
volumes:
claude-auth: