Game Server Management Interface
📌 Overview
A centralized web solution for managing multiple game servers on a single virtual machine. This interface provides secure access to critical server operations through an intuitive dashboard, eliminating the need for direct command-line interactions.
🌟 Key Features
Category | Details |
---|---|
Security | Role-based access control with Laravel authentication |
Server Control | Start/stop servers, save game states, and monitor status in real-time |
VM Integration | Direct interaction with virtual machine services through Bash script hooks |
Dashboard | Responsive Bootstrap interface with operational history tracking |
🛠 Technical Highlights
- Framework: Laravel 10 (PHP) with Eloquent ORM
- Core Functionality:
- Bash script integration for service management
- Containerized game servers using Docker
- CRON jobs for automated maintenance tasks
- Data Management: MySQL database with migration scripts
- Security: CSRF protection, encrypted sessions, and password hashing
- CI/CD: GitHub Actions for automated testing and deployment
🌐 Live Demo
Explore the live management interface:
http://gameserver.netshiba.com/
⚙️ System Architecture
graph TD
A[Web Browser] --> B[Laravel Application]
B --> C[MySQL Database]
B --> D[Bash Scripts]
D --> E[Game Server 1]
D --> F[Game Server 2]
D --> G[Game Server N]
style E fill:#4b8bbe,stroke:#333
style F fill:#4b8bbe,stroke:#333
style G fill:#4b8bbe,stroke:#333
📂 Repository Structure
├── app/ # Laravel core logic
├── config/ # Service configurations
├── docker/ # Container definitions
├── scripts/ # Bash scripts for server control
├── database/ # Migrations and seeders
└── resources/ # Blade templates & frontend assets