53 lines
1.1 KiB
YAML
53 lines
1.1 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: workout-planner-app
|
|
ports:
|
|
- '3000:3000'
|
|
environment:
|
|
- NODE_ENV=development
|
|
- DATABASE_URL=file:./data/app.db
|
|
- CLAUDE_API_KEY=${CLAUDE_API_KEY:-}
|
|
volumes:
|
|
- ./app:/app/app
|
|
- ./components:/app/components
|
|
- ./lib:/app/lib
|
|
- ./prisma:/app/prisma
|
|
- ./data:/app/data
|
|
- /app/node_modules
|
|
command: npm run dev
|
|
healthcheck:
|
|
test: ['CMD', 'wget', '--quiet', '--tries=1', '--spider', 'http://localhost:3000']
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 30s
|
|
|
|
prisma-studio:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: workout-planner-studio
|
|
ports:
|
|
- '5555:5555'
|
|
environment:
|
|
- NODE_ENV=development
|
|
- DATABASE_URL=file:./data/app.db
|
|
volumes:
|
|
- ./prisma:/app/prisma
|
|
- ./data:/app/data
|
|
- /app/node_modules
|
|
command: npx prisma studio
|
|
depends_on:
|
|
- app
|
|
profiles:
|
|
- debug
|
|
|
|
volumes:
|
|
data:
|
|
driver: local
|