ES module imports fail when served via file:// or raw Forge URLs due to CORS restrictions and missing Content-Type headers. This adds three deployment options for proper preview hosting: Options added: 1. Local preview: ./preview.sh (Python HTTP server with correct MIME) 2. Docker preview: docker compose up nexus-preview (nginx + WS proxy) 3. GitHub Pages: .github/workflows/pages.yml auto-deploy on push Files added: - Dockerfile.preview: nginx-based preview container - preview/nginx.conf: correct MIME types + WebSocket proxy to backend - preview.sh: Python one-liner preview server - PREVIEW.md: deployment documentation - .github/workflows/pages.yml: GitHub Pages CI/CD Files modified: - docker-compose.yml: added nexus-preview + nexus-backend services - deploy.sh: added preview/full deployment modes Fixes #1339
35 lines
601 B
YAML
35 lines
601 B
YAML
version: "3.9"
|
|
|
|
services:
|
|
nexus-main:
|
|
build: .
|
|
container_name: nexus-main
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8765:8765"
|
|
|
|
nexus-staging:
|
|
build: .
|
|
container_name: nexus-staging
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8766:8765"
|
|
|
|
nexus-backend:
|
|
build: .
|
|
container_name: nexus-backend
|
|
restart: unless-stopped
|
|
expose:
|
|
- "8765"
|
|
|
|
nexus-preview:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.preview
|
|
container_name: nexus-preview
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8080:8080"
|
|
depends_on:
|
|
- nexus-backend
|