-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.example.yml
More file actions
64 lines (60 loc) · 1.82 KB
/
docker-compose.example.yml
File metadata and controls
64 lines (60 loc) · 1.82 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
# Example Docker Compose for Enigma
# Copy this file to docker-compose.yml and adjust paths as needed
volumes:
enigma-data:
driver: local
services:
# Backend API server
enigma-backend:
container_name: enigma-backend
build: ./backend
ports:
- "3031:3000"
volumes:
- enigma-data:/app/data
# Mount .plugins directory for community sources (read-write)
- ./.plugins:/app/.plugins
environment:
- NODE_ENV=production
- SESSION_SECRET=${SESSION_SECRET:-change-me-in-production}
- FRONTEND_URL=http://localhost:3030
- PLUGINS_DIR=/app/.plugins
restart: unless-stopped
# Frontend (production build)
enigma-frontend:
container_name: enigma-frontend
image: node:22-alpine
working_dir: /app
volumes:
- ./:/app
- /app/node_modules
ports:
- "3030:5173"
command: >
sh -c "npm install --include=dev && npm run dev -- --host 0.0.0.0"
environment:
- NODE_ENV=development
# API_PROXY_TARGET is used by Vite's dev server proxy (server-side, not exposed to browser)
- API_PROXY_TARGET=http://enigma-backend:3000
# Default interface language for new users (before they set a preference)
# Supported values: en, es (more coming soon)
# Users can always change their language in Settings > Interface Language
- VITE_DEFAULT_LANGUAGE=${DEFAULT_LANGUAGE:-en}
depends_on:
- enigma-backend
restart: unless-stopped
# Optional: Run Vitest UI in a separate container
enigma-tests:
container_name: enigma-tests
image: node:22-alpine
working_dir: /app
volumes:
- ./:/app
- /app/node_modules
ports:
- "51204:51204"
command: >
sh -c "npm install --include=dev && npm run test:ui -- --host 0.0.0.0"
profiles:
- testing
restart: "no"