Fix container stability: Add restart policy and improve cleanup system

- Add restart: unless-stopped to docker-compose.dev.yml for automatic container restart
- Fix automated cleanup service to respect DISABLE_AUTO_CLEANUP environment variable
- Add process ID protection to prevent killing main Node.js process
- Update health check to use wget instead of curl
- Container now stays running reliably with proper cleanup controls
This commit is contained in:
mindesbunister
2025-07-26 10:15:58 +02:00
parent 8a71e0f748
commit 8cfb13f728
3 changed files with 14 additions and 57 deletions

View File

@@ -1,8 +1,7 @@
version: '2.4'
services:
app:
container_name: trader_dev
restart: unless-stopped
build:
context: .
dockerfile: Dockerfile
@@ -52,8 +51,6 @@ services:
- ./lib:/app/lib:cached
- ./components:/app/components:cached
- ./package.json:/app/package.json:ro
# Mount root JavaScript files for Enhanced Risk Manager
- ./start-enhanced-risk-manager.js:/app/start-enhanced-risk-manager.js:ro
# Port mapping for development
ports:
@@ -69,46 +66,3 @@ services:
timeout: 5s
retries: 2
start_period: 15s
# Enhanced Risk Manager as separate service
risk_manager:
container_name: enhanced_risk_manager
build:
context: .
dockerfile: Dockerfile
args:
- BUILDKIT_INLINE_CACHE=1
- NODE_VERSION=20.11.1
- PNPM_VERSION=8.15.1
# Override entrypoint and command to run Enhanced Risk Manager directly
entrypoint: []
command: ["node", "start-enhanced-risk-manager.js"]
# Enhanced Risk Manager environment
environment:
- NODE_ENV=development
- DOCKER_ENV=true
- DATABASE_URL=file:./prisma/dev.db
- TZ=Europe/Berlin
# Load environment variables from .env file
env_file:
- .env
# Enhanced Risk Manager volumes
volumes:
- ./lib:/app/lib:cached
- ./prisma:/app/prisma:cached
- ./start-enhanced-risk-manager.js:/app/start-enhanced-risk-manager.js:ro
# Working directory
working_dir: /app
# Depends on the main app being healthy
depends_on:
app:
condition: service_healthy
# Restart policy
restart: unless-stopped