services: exhibit: build: . container_name: newbury-exhibit restart: unless-stopped ports: # HOST_PORT lets an existing nginx proxy keep its port (set in .env); container stays on 33044 - "${HOST_PORT:-33044}:33044" environment: # dev = admin open + on-screen error overlay; final = password-protected admin EXHIBIT_MODE: ${EXHIBIT_MODE:-dev} ADMIN_PASSWORD: ${ADMIN_PASSWORD:-} volumes: # live scene/playlist edits survive rebuilds and redeploys - exhibit-live:/app/data/live # drop OBJ ghost models here without rebuilding the image - ./public/models:/app/public/models volumes: exhibit-live: