A professional Node.js project demonstrating multi-stage Docker builds, Docker Compose for dev & prod, and an Nginx reverse proxy for a production-ready deployment.
- Multi-stage Dockerfile (development & production)
- Healthcheck endpoint (
/health) - Nginx reverse proxy in production
- Hot-reload in development
- Environment-based configuration
- Makefile with shortcuts
.envsupport for multiple environments
.
├── src/ # Node.js source code
│ └── index.js # Main Express server
├── nginx.conf # Nginx reverse proxy config
├── Dockerfile # Multi-stage Dockerfile
├── docker-compose.yml # Base compose file
├── docker-compose.dev.yml # Dev overrides
├── docker-compose.prod.yml # Prod overrides
├── .env.example # Example env file
├── .env.development # Development env vars
├── .env.production # Production env vars
├── .dockerignore # Ignore files for Docker builds
├── Makefile # Shortcut commands
└── README.md # DocumentationMahmoud Metwally
🔗 LinkedIn
💻 GitHub
You can spin up this project instantly in your browser with GitPod:
- Development server → opens automatically at port 5000
- Production server → available manually at port 8000

