add cron-sync task, restart on postgres
This commit is contained in:
@@ -4,29 +4,45 @@ services:
|
|||||||
image: node:22-alpine
|
image: node:22-alpine
|
||||||
container_name: mail-s3-admin-dev
|
container_name: mail-s3-admin-dev
|
||||||
working_dir: /app
|
working_dir: /app
|
||||||
# Wichtig: Next.js Dev muss nach außen erreichbar sein
|
|
||||||
command: sh -c "npm run dev -- -p 3060 -H 0.0.0.0"
|
command: sh -c "npm run dev -- -p 3060 -H 0.0.0.0"
|
||||||
environment:
|
environment:
|
||||||
NODE_ENV: development
|
NODE_ENV: development
|
||||||
# Hot-Reload in Docker auf Windows/macOS
|
|
||||||
CHOKIDAR_USEPOLLING: "true"
|
CHOKIDAR_USEPOLLING: "true"
|
||||||
WATCHPACK_POLLING: "true"
|
WATCHPACK_POLLING: "true"
|
||||||
# Deine App-Variablen
|
|
||||||
DATABASE_URL: ${DATABASE_URL}
|
DATABASE_URL: ${DATABASE_URL}
|
||||||
APP_PASSWORD: ${APP_PASSWORD}
|
APP_PASSWORD: ${APP_PASSWORD}
|
||||||
PROCESSED_META_KEY: ${PROCESSED_META_KEY}
|
PROCESSED_META_KEY: ${PROCESSED_META_KEY}
|
||||||
PROCESSED_META_VALUE: ${PROCESSED_META_VALUE}
|
PROCESSED_META_VALUE: ${PROCESSED_META_VALUE}
|
||||||
# (Optional) Next Telemetry aus
|
|
||||||
NEXT_TELEMETRY_DISABLED: "1"
|
NEXT_TELEMETRY_DISABLED: "1"
|
||||||
# ports:
|
|
||||||
# - "3060:3000"
|
|
||||||
volumes:
|
volumes:
|
||||||
- .:/app:cached # Dein Projektordner direkt im Container
|
- .:/app:cached
|
||||||
depends_on:
|
depends_on:
|
||||||
- postgres
|
- postgres
|
||||||
# Für interaktive Logs (CTRL+C sauber)
|
|
||||||
tty: true
|
tty: true
|
||||||
stdin_open: true
|
stdin_open: true
|
||||||
|
# FIX: Sorgt dafür, dass der Container nach einem Reboot wieder startet
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
cron-sync:
|
||||||
|
network_mode: "host"
|
||||||
|
image: node:22-alpine
|
||||||
|
container_name: mail-s3-admin-cron
|
||||||
|
working_dir: /app
|
||||||
|
# Startet das Skript mit tsx (entspricht deinem pm2 --interpreter tsx Ansatz)
|
||||||
|
command: sh -c "npx tsx cron-sync.ts"
|
||||||
|
environment:
|
||||||
|
NODE_ENV: development
|
||||||
|
DATABASE_URL: ${DATABASE_URL}
|
||||||
|
# AWS Variablen für den S3 Sync
|
||||||
|
AWS_REGION: ${AWS_REGION}
|
||||||
|
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
|
||||||
|
AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
|
||||||
|
volumes:
|
||||||
|
- .:/app:cached
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
# Auch der Cronjob soll bei einem Reboot automatisch starten
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
postgres:
|
postgres:
|
||||||
image: postgres:17-alpine
|
image: postgres:17-alpine
|
||||||
@@ -36,7 +52,7 @@ services:
|
|||||||
POSTGRES_PASSWORD: ${DATABASE_PASSWORD}
|
POSTGRES_PASSWORD: ${DATABASE_PASSWORD}
|
||||||
POSTGRES_DB: mydb
|
POSTGRES_DB: mydb
|
||||||
ports:
|
ports:
|
||||||
- "5432:5432" # Optional: Host-Zugriff auf DB
|
- "5432:5432"
|
||||||
volumes:
|
volumes:
|
||||||
- postgres-data:/var/lib/postgresql/data
|
- postgres-data:/var/lib/postgresql/data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|||||||
Reference in New Issue
Block a user