feat: add Docker image, production server and health check

- Multi-stage Dockerfile on node:24-slim, non-root, healthcheck, /app/data volume
- server.mjs wraps the Astro handler with brotli/gzip compression,
  security headers and graceful SIGTERM shutdown (npm start)
- GET /api/health/ reports server and view-counter DB status
- Move build-only packages to devDependencies (smaller runtime image)
- docker-compose.yml as an alternative for Dokploy Compose

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-16 02:58:45 +03:00
parent 7d8fcce2e1
commit 91cb337c03
10 changed files with 446 additions and 28 deletions
+16
View File
@@ -0,0 +1,16 @@
# Alternative to Dokploy's "Application" type: Dokploy → Create Service → Compose.
# Domains/HTTPS are still configured in Dokploy's UI (Traefik); no host ports are published.
services:
web:
build: .
restart: unless-stopped
environment:
NODE_ENV: production
DATA_DIR: /app/data
volumes:
- ta1sph-data:/app/data
expose:
- '4321'
volumes:
ta1sph-data: