-
Notifications
You must be signed in to change notification settings - Fork 49
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
92 lines (87 loc) · 3.39 KB
/
Copy pathdocker-compose.yml
File metadata and controls
92 lines (87 loc) · 3.39 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
version: '3.8'
x-shared-app-env: &shared-app-env
APP_SESSION_SECRET: ${APP_SESSION_SECRET:-novelclaw-local-docker-session-secret-change-me}
APP_SESSION_COOKIE_NAME: ${APP_SESSION_COOKIE_NAME:-novelclaw_session}
services:
auth-portal:
build: .
container_name: novelclaw-auth-portal
working_dir: /app/apps/auth-portal
command: python -m uvicorn local_web_portal.app.main:app --host 0.0.0.0 --port 8010
ports:
- "8010:8010"
volumes:
- ./apps/auth-portal/local_web_portal/data:/app/apps/auth-portal/local_web_portal/data
- ./apps/auth-portal/.env:/app/apps/auth-portal/.env:ro
environment:
<<: *shared-app-env
PYTHONUNBUFFERED: "1"
APP_MULTIAGENT_PORT: ${APP_MULTIAGENT_PORT:-8011}
APP_CLAW_PORT: ${APP_CLAW_PORT:-8012}
WEB_UI_LANGUAGE: ${WEB_UI_LANGUAGE:-zh}
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8010/healthz', timeout=3).read()"]
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
restart: unless-stopped
networks:
- novelclaw-network
multiagent:
build: .
container_name: novelclaw-multiagent
working_dir: /app/apps/multiagent
command: python -m uvicorn local_web_portal.app.main:app --host 0.0.0.0 --port 8011
ports:
- "8011:8011"
volumes:
- ./apps/multiagent/local_web_portal/data:/app/apps/multiagent/local_web_portal/data
- ./apps/multiagent/local_web_portal/runs:/app/apps/multiagent/local_web_portal/runs
- ./apps/auth-portal/local_web_portal/data:/app/apps/auth-portal/local_web_portal/data
- ./apps/multiagent/.env:/app/apps/multiagent/.env:ro
environment:
<<: *shared-app-env
PYTHONUNBUFFERED: "1"
APP_AUTH_DATABASE_URL: sqlite:////app/apps/auth-portal/local_web_portal/data/app.db
APP_SHARED_PORTAL_PORT: ${APP_SHARED_PORTAL_PORT:-8010}
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8011/healthz', timeout=3).read()"]
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
restart: unless-stopped
networks:
- novelclaw-network
novelclaw:
build: .
container_name: novelclaw-workspace
working_dir: /app/apps/novelclaw
command: python -m uvicorn local_web_portal.app.main:app --host 0.0.0.0 --port 8012
ports:
- "8012:8012"
volumes:
- ./apps/novelclaw/local_web_portal/data:/app/apps/novelclaw/local_web_portal/data
- ./apps/novelclaw/local_web_portal/runs:/app/apps/novelclaw/local_web_portal/runs
- ./apps/auth-portal/local_web_portal/data:/app/apps/auth-portal/local_web_portal/data
- ./apps/novelclaw/.env:/app/apps/novelclaw/.env:ro
environment:
<<: *shared-app-env
PYTHONUNBUFFERED: "1"
APP_AUTH_DATABASE_URL: sqlite:////app/apps/auth-portal/local_web_portal/data/app.db
APP_SHARED_PORTAL_PORT: ${APP_SHARED_PORTAL_PORT:-8010}
WEB_UI_LANGUAGE: ${WEB_UI_LANGUAGE:-zh}
WEB_MODELLESS_MODE: ${WEB_MODELLESS_MODE:-0}
healthcheck:
test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8012/healthz', timeout=3).read()"]
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
restart: unless-stopped
networks:
- novelclaw-network
networks:
novelclaw-network:
driver: bridge