services: warmbox: build: . image: warmbox:local container_name: warmbox restart: unless-stopped env_file: .env environment: DATABASE_URL: file:/data/warmbox.db NODE_ENV: production volumes: - warmbox-data:/data # No host ports — NPM reaches this container on npm_network at warmbox:3000 healthcheck: test: ['CMD', 'node', '-e', "fetch('http://127.0.0.1:3000/health').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))"] interval: 30s timeout: 5s retries: 3 start_period: 40s volumes: warmbox-data: networks: default: external: true name: npm_network