Sanitized mirror from private repository - 2026-04-18 10:57:41 UTC
Some checks failed
Documentation / Build Docusaurus (push) Failing after 5m2s
Documentation / Deploy to GitHub Pages (push) Has been skipped

This commit is contained in:
Gitea Mirror Bot
2026-04-18 10:57:41 +00:00
commit 4c8d376e9b
1418 changed files with 359979 additions and 0 deletions

View File

@@ -0,0 +1,108 @@
# PufferPanel - Game Server Management
## 📋 Overview
PufferPanel is a web-based game server management panel that provides an easy-to-use interface for managing game servers, including Minecraft, Garry's Mod, and other popular games.
## 🔧 Service Details
| Property | Value |
|----------|-------|
| **Service Type** | System Service |
| **Binary Location** | `/usr/sbin/pufferpanel` |
| **Configuration** | `/etc/pufferpanel/` |
| **Data Directory** | `/var/lib/pufferpanel/` |
| **Web Port** | 8080 |
| **SFTP Port** | 5657 |
| **Process User** | `pufferpanel` |
## 🌐 Network Access
- **Web Interface**: `http://seattle-vm:8080`
- **SFTP Access**: `sftp://seattle-vm:5657`
- **Reverse Proxy**: Configured via Nginx (check `/etc/nginx/sites-enabled/pufferpanel`)
## 🚀 Management Commands
### Service Control
```bash
# Check status
sudo systemctl status pufferpanel
# Start/stop/restart
sudo systemctl start pufferpanel
sudo systemctl stop pufferpanel
sudo systemctl restart pufferpanel
# Enable/disable autostart
sudo systemctl enable pufferpanel
sudo systemctl disable pufferpanel
```
### Logs and Monitoring
```bash
# View logs
sudo journalctl -u pufferpanel -f
# Check process
ps aux | grep pufferpanel
# Check listening ports
ss -tlnp | grep -E "(8080|5657)"
```
## 📁 Directory Structure
```
/etc/pufferpanel/
├── config.json # Main configuration
└── ...
/var/lib/pufferpanel/
├── servers/ # Game server instances
├── templates/ # Server templates
├── cache/ # Temporary files
└── logs/ # Application logs
```
## ⚙️ Configuration
### Main Config (`/etc/pufferpanel/config.json`)
- Web interface settings
- Database configuration
- SFTP server settings
- Authentication providers
### Server Management
- Create new game servers via web interface
- Configure server resources and settings
- Manage server files via SFTP or web interface
- Monitor server performance and logs
## 🔒 Security Considerations
- **User Access**: Managed through PufferPanel's user system
- **File Permissions**: Servers run under restricted user accounts
- **Network**: SFTP and web ports exposed, consider firewall rules
- **Updates**: Keep PufferPanel updated for security patches
## 🎮 Supported Games
PufferPanel supports many game servers including:
- Minecraft (Java & Bedrock)
- Garry's Mod
- Counter-Strike
- Team Fortress 2
- And many more via templates
## 🔗 Related Services
- **Garry's Mod PropHunt Server**: Managed through this panel
- **Nginx**: Provides reverse proxy for web interface
- **System Users**: Game servers run under dedicated users
## 📚 External Resources
- [PufferPanel Documentation](https://docs.pufferpanel.com/)
- [GitHub Repository](https://github.com/PufferPanel/PufferPanel)
- [Community Discord](https://discord.gg/pufferpanel)

View File

@@ -0,0 +1,87 @@
version: '3.8'
services:
pufferpanel:
image: pufferpanel/pufferpanel:latest
container_name: pufferpanel
restart: unless-stopped
environment:
- PUFFER_WEB_HOST=0.0.0.0:8080
- PUFFER_DAEMON_SFTP_HOST=0.0.0.0:5657
- PUFFER_DAEMON_DATA_FOLDER=/var/lib/pufferpanel
- PUFFER_DAEMON_CONSOLE_BUFFER=50
- PUFFER_DAEMON_CONSOLE_FORWARD=false
- PUFFER_LOGS_LEVEL=INFO
- PUFFER_WEB_SESSION_KEY=changeme-generate-random-key
- TZ=America/Los_Angeles
ports:
- "8080:8080" # Web interface
- "5657:5657" # SFTP server
volumes:
# Configuration and data
- pufferpanel-config:/etc/pufferpanel
- pufferpanel-data:/var/lib/pufferpanel
- pufferpanel-logs:/var/log/pufferpanel
# Docker socket for container management (if needed)
- /var/run/docker.sock:/var/run/docker.sock:ro
# Game server files (optional, for direct file access)
- pufferpanel-servers:/var/lib/pufferpanel/servers
networks:
- pufferpanel-network
# Security context
user: "1000:1000"
# Resource limits
deploy:
resources:
limits:
cpus: '2'
memory: 2G
reservations:
cpus: '0.5'
memory: 512M
# Health check
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/api/self"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
# Logging configuration
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
networks:
pufferpanel-network:
driver: bridge
volumes:
pufferpanel-config:
driver: local
pufferpanel-data:
driver: local
pufferpanel-logs:
driver: local
pufferpanel-servers:
driver: local
# Note: This is a reference Docker Compose configuration.
# The current installation runs as a system service.
# To migrate to Docker:
# 1. Stop the system service: sudo systemctl stop pufferpanel
# 2. Backup current data: sudo cp -r /var/lib/pufferpanel /backup/
# 3. Update this configuration with your specific settings
# 4. Run: docker-compose up -d
# 5. Restore data if needed