File size: 1,811 Bytes
cad548d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
# ═══════════════════════════════════════════════════════════════════════════════
# GLB Animation Studio β€” docker-compose
# For local testing of the HF Spaces Docker image
# ═══════════════════════════════════════════════════════════════════════════════

version: "3.9"

services:

  # ── Production (mirrors HF Spaces exactly) ──────────────────────────────────
  app:
    build:
      context: .
      dockerfile: Dockerfile
    image: glb-animation-studio:latest
    container_name: glb-studio
    ports:
      - "7860:7860"       # Same port as HF Spaces
    restart: unless-stopped
    read_only: false
    tmpfs:
      - /tmp
      - /var/cache/nginx
      - /var/run
    healthcheck:
      test: ["CMD", "wget", "-qO-", "http://localhost:7860/"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 20s

  # ── Development with hot-reload ─────────────────────────────────────────────
  dev:
    image: node:20-alpine
    container_name: glb-studio-dev
    working_dir: /app
    ports:
      - "5173:5173"
    volumes:
      - .:/app
      - /app/node_modules
    environment:
      - NODE_ENV=development
      - CHOKIDAR_USEPOLLING=true
    command: sh -c "npm install --legacy-peer-deps && npm run dev -- --host 0.0.0.0"
    profiles:
      - dev

networks:
  default:
    name: glb-studio-net