Complete Node.js container implementation with multi-version support
- Add Dockerfile with AlmaLinux 9 base, Nginx reverse proxy, and PM2
- Support Node.js versions 18, 20, 22 with automated installation
- Implement memory-optimized configuration (256MB minimum, 512MB recommended)
- Add Memcached session storage for development environments
- Create comprehensive documentation (README, USER-GUIDE, MEMORY-GUIDE, CLAUDE.md)
- Include example applications (simple website and REST API)
- Add Gitea CI/CD pipeline for automated multi-version builds
- Provide local development script with helper utilities
- Implement health monitoring, log rotation, and backup systems
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-21 16:00:46 -07:00
|
|
|
const express = require('express');
|
|
|
|
const path = require('path');
|
|
|
|
const app = express();
|
|
|
|
const port = process.env.PORT || 3000;
|
|
|
|
|
|
|
|
// Serve static files from public directory
|
|
|
|
app.use(express.static('public'));
|
|
|
|
|
|
|
|
// Basic routes
|
|
|
|
app.get('/', (req, res) => {
|
|
|
|
res.sendFile(path.join(__dirname, 'public', 'index.html'));
|
|
|
|
});
|
|
|
|
|
|
|
|
app.get('/about', (req, res) => {
|
|
|
|
res.sendFile(path.join(__dirname, 'public', 'about.html'));
|
|
|
|
});
|
|
|
|
|
|
|
|
app.get('/contact', (req, res) => {
|
|
|
|
res.sendFile(path.join(__dirname, 'public', 'contact.html'));
|
|
|
|
});
|
|
|
|
|
|
|
|
// Health check for the container
|
|
|
|
app.get('/ping', (req, res) => {
|
|
|
|
res.json({ status: 'ok', timestamp: new Date().toISOString() });
|
|
|
|
});
|
|
|
|
|
|
|
|
app.listen(port, () => {
|
|
|
|
console.log(`Simple website running on port ${port}`);
|
2025-07-24 09:53:01 -07:00
|
|
|
// Send ready signal to PM2
|
|
|
|
if (process.send) {
|
|
|
|
process.send('ready');
|
|
|
|
}
|
Complete Node.js container implementation with multi-version support
- Add Dockerfile with AlmaLinux 9 base, Nginx reverse proxy, and PM2
- Support Node.js versions 18, 20, 22 with automated installation
- Implement memory-optimized configuration (256MB minimum, 512MB recommended)
- Add Memcached session storage for development environments
- Create comprehensive documentation (README, USER-GUIDE, MEMORY-GUIDE, CLAUDE.md)
- Include example applications (simple website and REST API)
- Add Gitea CI/CD pipeline for automated multi-version builds
- Provide local development script with helper utilities
- Implement health monitoring, log rotation, and backup systems
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-21 16:00:46 -07:00
|
|
|
});
|