Files
hoerdle/docker-compose.example.yml

30 lines
1004 B
YAML

services:
hoerdle:
container_name: hoerdle
build:
context: .
dockerfile: Dockerfile
user: root
restart: always
ports:
- "3010:3000"
environment:
- DATABASE_URL=file:/app/data/prod.db
- ADMIN_PASSWORD=$$2b$$10$$SHOt9G1qUNIvHoWre7499.eEtp5PtOII0daOQGNV.dhDEuPmOUdsq # Change this! Must be a bcrypt hash. Escape $ as $$ in docker-compose!
- TZ=Europe/Berlin # Timezone for daily puzzle rotation
- GOTIFY_URL=https://gotify.example.com
- GOTIFY_APP_TOKEN=your_gotify_token
- OPENROUTER_API_KEY=your_openrouter_api_key
volumes:
- ./data:/app/data
- ./public/uploads:/app/public/uploads
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:3000/api/daily" ]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# Initialize DB if needed and run migration
command: >
sh -c "npx -y prisma@6.19.0 db push && node scripts/migrate-covers.mjs && node server.js"