Protect recordings per user, seed a demo login on container start, and bind-mount the app with Vite HMR for local Compose development.
59 lines
1.4 KiB
YAML
59 lines
1.4 KiB
YAML
# Local development overlay: bind-mount source + Vite HMR.
|
|
# Usage:
|
|
# docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build -d
|
|
# Or set in .env:
|
|
# COMPOSE_FILE=docker-compose.yml:docker-compose.dev.yml
|
|
|
|
services:
|
|
app:
|
|
environment:
|
|
KEEP_VITE_HOT: "true"
|
|
volumes:
|
|
- .:/app
|
|
depends_on:
|
|
vite:
|
|
condition: service_started
|
|
|
|
queue:
|
|
# Reload PHP between jobs so code mounts take effect without restarting.
|
|
command:
|
|
- php
|
|
- artisan
|
|
- queue:listen
|
|
- database
|
|
- --sleep=1
|
|
- --tries=1
|
|
- --timeout=${TRANSCRIPTION_TIMEOUT:-600}
|
|
environment:
|
|
KEEP_VITE_HOT: "true"
|
|
volumes:
|
|
- .:/app
|
|
|
|
reverb:
|
|
environment:
|
|
KEEP_VITE_HOT: "true"
|
|
volumes:
|
|
- .:/app
|
|
|
|
vite:
|
|
image: node:22-bookworm
|
|
container_name: andytranscribe-vite
|
|
working_dir: /app
|
|
command: sh -c "npm ci && npm run dev -- --host 0.0.0.0 --port 5173"
|
|
ports:
|
|
- "${VITE_HOST_PORT:-5173}:5173"
|
|
environment:
|
|
VITE_APP_NAME: ${VITE_APP_NAME:-AndyTranscribe}
|
|
VITE_REVERB_APP_KEY: ${REVERB_APP_KEY:-andytranscribe-key}
|
|
VITE_REVERB_HOST: ${VITE_REVERB_HOST:-localhost}
|
|
VITE_REVERB_PORT: ${REVERB_HOST_PORT:-8081}
|
|
VITE_REVERB_SCHEME: ${VITE_REVERB_SCHEME:-http}
|
|
VITE_USE_POLLING: "true"
|
|
volumes:
|
|
- .:/app
|
|
- vite-node-modules:/app/node_modules
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
vite-node-modules:
|