-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
executable file
·71 lines (69 loc) · 2.38 KB
/
docker-compose.yml
File metadata and controls
executable file
·71 lines (69 loc) · 2.38 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
name: logseq-xr
services:
webxr:
build: .
image: logseq-xr-image:latest
container_name: logseq-xr-webxr
read_only: false
networks:
ragflow:
aliases:
- webxr-client # Removed logseq-xr-webxr alias
deploy:
resources:
limits:
cpus: '16.0'
memory: 64G
reservations:
devices:
- driver: nvidia
device_ids: ['0'] # Explicitly use GPU 0
capabilities: [compute, utility]
expose:
- "4000"
ports:
- "4000:4000" # Map container nginx port 4000 to host port 4000
environment:
- RUST_LOG=warn # Changed from info
- RUST_BACKTRACE=1
- BIND_ADDRESS=0.0.0.0
- PORT=3001 # Explicitly set Rust backend to use port 3001
- NGINX_PORT=4000 # Set nginx to use port 4000
- NVIDIA_GPU_UUID=GPU-553dc306-dab3-32e2-c69b-28175a6f4da6 # Direct UUID value for the specific GPU
- NVIDIA_VISIBLE_DEVICES=GPU-553dc306-dab3-32e2-c69b-28175a6f4da6 # Pass the GPU UUID directly
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
- NODE_ENV=production
- GIT_HASH=${GIT_HASH:-development} # Pass GIT_HASH from build environment
- DEBUG_MODE=${DEBUG_MODE:-false} # Control whether to start webxr or not
env_file:
- .env
volumes:
- ./data/markdown:/app/data/markdown
- ./data/metadata:/app/data/metadata # Added metadata volume mount
- ./data/user_settings:/app/user_settings # Added user settings volume mount
- ./data/settings.yaml:/app/settings.yaml:rw # Simplified syntax, rw for read-write
- type: tmpfs
target: /tmp
tmpfs:
size: 4G
user: "${UID:-1000}:${GID:-1000}" # Use host user's UID/GID or default to 1000
restart: unless-stopped
stop_grace_period: 30s
command: sh -c 'exec /app/start.sh' # Always start WebXR with GPU enabled (via modified start.sh)
init: true
logging:
driver: "json-file"
options:
max-size: "1g"
max-file: "5"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:4000/"]
interval: 10s
timeout: 5s
retries: 3
start_period: 10s
# Removed cloudflared service definition - now defined in docker-compose.production.yml
networks:
ragflow:
external: true
name: docker_ragflow # RAGFlow's network name from docker network ls