#!/bin/sh set -e : "${DB_PATH:=/data/hdc.db}" export DB_PATH APP_CMD="node ./dist/server/entry.mjs" # Litestream nur nutzen, wenn ein Replica-Ziel konfiguriert ist. if [ -n "$LITESTREAM_REPLICA_URL" ] && command -v litestream >/dev/null 2>&1; then echo "[entrypoint] Litestream aktiv — Replica: $LITESTREAM_REPLICA_URL" # DB aus dem Backup wiederherstellen, falls lokal noch keine existiert. if [ ! -f "$DB_PATH" ]; then echo "[entrypoint] Keine lokale DB unter $DB_PATH — versuche Restore aus Replica …" : "${LITESTREAM_CONFIG:=/app/litestream.yml}" litestream restore -config "$LITESTREAM_CONFIG" -if-replica-exists "$DB_PATH" || echo "[entrypoint] Kein Replica gefunden, starte mit frischer DB." fi exec litestream replicate -config "$LITESTREAM_CONFIG" -exec "$APP_CMD" else if [ -n "$LITESTREAM_REPLICA_URL" ]; then echo "[entrypoint] LITESTREAM_REPLICA_URL gesetzt, aber litestream-Binary fehlt — starte ohne Backup." else echo "[entrypoint] Kein Litestream-Replica konfiguriert — normaler Start ohne Backup." fi exec $APP_CMD fi