25 lines
822 B
YAML
25 lines
822 B
YAML
services:
|
|
research:
|
|
build: .
|
|
container_name: research-chat
|
|
restart: unless-stopped
|
|
ports:
|
|
- "3000:3000"
|
|
env_file: .env
|
|
environment:
|
|
# Port im Container immer 3000 (auch wenn PORT in .env anders ist)
|
|
PORT: "3000"
|
|
volumes:
|
|
# Persistente Daten (SQLite, generierte Secrets in .env) und Dashboards.
|
|
# :Z nötig für SELinux-Systeme (Bazzite/Fedora Atomic), damit der Container
|
|
# die Host-Dateien lesen kann. Docker ignoriert das Flag.
|
|
- ./data:/app/data:Z
|
|
- ./dashboards:/app/dashboards:Z
|
|
- ./.env:/app/.env:Z
|
|
healthcheck:
|
|
test: ["CMD", "node", "-e", "fetch('http://localhost:3000/').then(r => process.exit(r.ok ? 0 : 1)).catch(() => process.exit(1))"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 5
|
|
start_period: 20s
|