A custom hosting panel for Windows Server 2022 with support for Node.js, Python, .NET applications, custom scheduler, system monitoring, and AI-powered features.
- Multi-runtime Support: Host Node.js, Python, .NET, and static websites
- Process Manager: Auto-start, auto-restart with health checks
- Custom Scheduler: Cron-like job scheduling (replaces Windows Task Scheduler)
- System Monitoring: Real-time CPU, memory, disk, and network metrics with alerts
- AI Integration: OpenAI-powered system analysis and chat assistant
- Modern Dashboard: React/Next.js web interface
- Dashboard: http://localhost:3000
- API: http://localhost:4000
- IIS Proxy: http://localhost:8080
ServerPilot runs as Windows services for automatic startup:
serverpilotapi.exe- API Serviceserverpilotdashboard.exe- Dashboard Service
# Start services
net start serverpilotapi.exe
net start serverpilotdashboard.exe
# Stop services
net stop serverpilotdashboard.exe
net stop serverpilotapi.exe
# Check status
sc query serverpilotapi.exe
sc query serverpilotdashboard.exeOr use the batch scripts:
C:\ServerPilot\start.bat- Start all servicesC:\ServerPilot\stop.bat- Stop all services
Edit C:\ServerPilot\api\.env:
PORT=4000
HOST=127.0.0.1
NODE_ENV=production
JWT_SECRET=your-secure-secret
ADMIN_PASSWORD=admin123
OPENAI_API_KEY=your-openai-api-key
APPS_PATH=C:\ServerPilot\apps
LOGS_PATH=C:\ServerPilot\logs
DATA_PATH=C:\ServerPilot\data- Username:
admin - Password:
admin123
Important: Change the admin password after first login!
C:\ServerPilot\
├── api\ # Backend API (Node.js/Express)
│ ├── src\ # TypeScript source
│ ├── dist\ # Compiled JavaScript
│ └── .env # Configuration
├── dashboard\ # Frontend (Next.js/React)
│ └── .next\ # Build output
├── apps\ # Hosted applications
├── data\ # Database (JSON files)
├── logs\ # Application logs
├── web\ # IIS web root
│ └── web.config # Reverse proxy config
├── start.bat # Start all services
├── stop.bat # Stop all services
└── README.md # This file
GET /health- API health check
POST /api/auth/login- Login
GET /api/apps- List all appsPOST /api/apps- Create appGET /api/apps/:id- Get app detailsPUT /api/apps/:id- Update appDELETE /api/apps/:id- Delete app
GET /api/processes- List running processesPOST /api/processes/:id/start- Start appPOST /api/processes/:id/stop- Stop appPOST /api/processes/:id/restart- Restart app
GET /api/scheduler/jobs- List jobsPOST /api/scheduler/jobs- Create jobDELETE /api/scheduler/jobs/:id- Delete jobPOST /api/scheduler/jobs/:id/run- Run job nowGET /api/scheduler/history- Job execution history
GET /api/monitor/metrics- Current system metricsGET /api/monitor/history- Metrics historyGET /api/monitor/alerts- System alertsDELETE /api/monitor/alerts/:id- Dismiss alert
POST /api/ai/chat- Chat with AI assistantGET /api/ai/analyze-health- AI system health analysisPOST /api/ai/analyze-logs- AI log analysis
GET /api/logs- Get application logs
# Uninstall
node C:\ServerPilot\api\uninstall-service.js
# Install
node C:\ServerPilot\api\install-service.js
node C:\ServerPilot\dashboard\install-service.js- Check Windows Event Viewer for errors
- Verify Node.js is installed:
node --version - Check service logs in the daemon folder
- Verify API is running:
curl http://localhost:4000/health - Check dashboard service:
sc query serverpilotdashboard.exe - Rebuild if needed:
npm run build --prefix C:\ServerPilot\dashboard
- Verify ARR is enabled: Check IIS Manager
- Test direct access: http://localhost:3000 and http://localhost:4000
- Check web.config in C:\ServerPilot\web
Built with Node.js, Express, Next.js, React, and TypeScript.