- Enhanced Caddyfile with consolidated HTTPS block supporting all access points - Added support for https://digiserver, https://10.76.152.164, and https://digiserver.sibiusb.harting.intra - Configured Caddy reverse proxy with HTTP/3 (QUIC), TLS 1.3+, and HTTP/2 support - Implemented security headers (X-Frame-Options, X-Content-Type-Options, X-XSS-Protection) - Added HTTP to HTTPS automatic redirects for all endpoints - Enhanced setup_https.sh with improved error handling and progress reporting - Created deploy.sh for fully automated one-command deployment - Added comprehensive deployment documentation (5 guides) - Configured 2GB file upload limit and 300s request/response timeouts - Added Caddy admin API on port 2019 for configuration management - Implemented health checks and container dependency management - All volumes persistent and properly isolated - Production-ready configuration with environment variable parameterization
8.0 KiB
8.0 KiB
📚 DigiServer Deployment Documentation Index
Complete documentation for deploying and maintaining DigiServer. Choose your path below:
🚀 I Want to Deploy Now!
Quick Start (2 minutes)
cd /path/to/digiserver-v2
./deploy.sh
→ See DEPLOYMENT_README.md
Or Step-by-Step Setup
./setup_https.sh
📖 Documentation Files
1. DEPLOYMENT_README.md ⭐ START HERE
- Size: 9.4 KB
- Purpose: Complete deployment guide for beginners
- Contains:
- Quick start instructions
- Prerequisites checklist
- 3 deployment methods (auto, semi-auto, manual)
- Verification procedures
- First access setup
- Troubleshooting guide
- Read time: 15-20 minutes
2. DOCKER_EXEC_COMMANDS.md ⭐ REFERENCE GUIDE
- Size: 7.6 KB
- Purpose: Quick reference for all docker exec commands
- Contains:
- Database migrations
- HTTPS configuration
- User management
- Database inspection
- Health checks
- Maintenance commands
- Troubleshooting commands
- Use when: You need a specific command
- Read time: 5-10 minutes (or search for what you need)
3. DEPLOYMENT_COMMANDS.md
- Size: 6.8 KB
- Purpose: Detailed deployment command explanations
- Contains:
- Individual command explanations
- Complete deployment script template
- Health check procedures
- Verification steps
- Advanced troubleshooting
- Read time: 20-30 minutes
🔧 Executable Scripts
1. deploy.sh - Fully Automated
- Size: 6.7 KB
- Purpose: One-command deployment
- Does:
- Starts Docker containers
- Runs all migrations
- Configures HTTPS
- Verifies setup
- Shows access URLs
- Usage:
./deploy.sh - With custom settings:
HOSTNAME=server1 DOMAIN=server1.internal ./deploy.sh
2. setup_https.sh - Semi-Automated
- Size: 5.9 KB
- Purpose: Setup script that works in or outside Docker
- Does:
- Detects environment (Docker container or host)
- Runs migrations
- Configures HTTPS
- Shows status
- Usage:
./setup_https.sh
🎯 Quick Navigation by Task
"I need to deploy on a new PC"
- Read: DEPLOYMENT_README.md
- Run:
./deploy.sh - Access: https://digiserver.sibiusb.harting.intra
"I need a specific docker exec command"
→ Search DOCKER_EXEC_COMMANDS.md
"I want to understand what's being deployed"
→ Read DEPLOYMENT_COMMANDS.md
"Something went wrong, help!"
→ See DEPLOYMENT_README.md or DOCKER_EXEC_COMMANDS.md
"I need to configure custom settings"
→ Read DEPLOYMENT_README.md
"I want to manage HTTPS"
→ See DOCKER_EXEC_COMMANDS.md
📋 Deployment Checklist
- Docker and Docker Compose installed
- Project files copied to new PC
- Run
./deploy.shor./setup_https.sh - Verify with
docker-compose ps - Access https://digiserver.sibiusb.harting.intra
- Log in with admin/admin123
- Change default password
- Configure players and content
🔑 Configuration Options
Default Settings
Hostname: digiserver
Domain: digiserver.sibiusb.harting.intra
IP Address: 10.76.152.164
Port: 443
Email: admin@example.com
Username: admin
Password: admin123
Customize During Deployment
HOSTNAME=myserver \
DOMAIN=myserver.internal \
IP_ADDRESS=192.168.1.100 \
EMAIL=admin@myserver.com \
./deploy.sh
🆘 Common Tasks
| Task | Command |
|---|---|
| Start containers | docker-compose up -d |
| Stop containers | docker-compose stop |
| View logs | docker-compose logs -f |
| Check HTTPS status | docker-compose exec -T digiserver-app python /app/https_manager.py status |
| Reset password | See DOCKER_EXEC_COMMANDS.md |
| View all tables | See DOCKER_EXEC_COMMANDS.md |
| Create admin user | See DOCKER_EXEC_COMMANDS.md |
📊 File Structure
digiserver-v2/
├── DEPLOYMENT_README.md ..................... Main deployment guide
├── DOCKER_EXEC_COMMANDS.md ................. Quick reference (BEST FOR COMMANDS)
├── DEPLOYMENT_COMMANDS.md .................. Detailed explanations
├── deploy.sh ............................. Fully automated deployment
├── setup_https.sh ......................... Semi-automated setup
├── docker-compose.yml ..................... Docker services config
├── Caddyfile .............................. Reverse proxy config
├── requirements.txt ....................... Python dependencies
│
├── app/
│ ├── app.py ............................ Flask application
│ ├── models/ ........................... Database models
│ │ ├── https_config.py
│ │ ├── user.py
│ │ └── ...
│ └── ...
│
├── migrations/
│ ├── add_https_config_table.py
│ ├── add_player_user_table.py
│ ├── add_email_to_https_config.py
│ └── migrate_player_user_global.py
│
└── old_code_documentation/
├── HTTPS_CONFIGURATION.md
└── ...
🚀 Deployment Methods Comparison
| Method | Time | Effort | Best For |
|---|---|---|---|
./deploy.sh |
2-3 min | Click & wait | First-time setup, automation |
./setup_https.sh |
3-5 min | Manual review | Learning, step debugging |
| Manual commands | 10-15 min | Full control | Advanced users, scripting |
✨ What Gets Deployed
✅ Flask web application with admin dashboard ✅ HTTPS with self-signed certificates ✅ Caddy reverse proxy for routing ✅ SQLite database with all tables ✅ User management system ✅ HTTPS configuration management ✅ Player and content management ✅ Group and playlist management ✅ Admin audit trail
🎓 Learning Path
-
Total Beginner?
- Start: DEPLOYMENT_README.md
- Run:
./deploy.sh - Learn: Browse DOCKER_EXEC_COMMANDS.md for available commands
-
Want to Understand Everything?
- Read: DEPLOYMENT_README.md (all 3 methods)
- Study: DEPLOYMENT_COMMANDS.md
- Reference: DOCKER_EXEC_COMMANDS.md
-
Need to Troubleshoot?
- Check: DEPLOYMENT_README.md
- Or: DOCKER_EXEC_COMMANDS.md
💡 Pro Tips
- Use
-Tflag in docker-compose exec for scripts (prevents TTY issues) - Keep backups before major changes
- Check logs often:
docker-compose logs -f - Use environment variables for custom deployments
- Verify after deployment using health check commands
🔗 Related Documentation
- HTTPS Setup:
old_code_documentation/HTTPS_CONFIGURATION.md - Admin Features: Check admin panel after login
- API Documentation: See
old_code_documentation/PLAYER_EDIT_MEDIA_API.md
📞 Support
- Logs:
docker-compose logs digiserver-app - Health Check: See DOCKER_EXEC_COMMANDS.md#-health-checks
- Troubleshooting: See DEPLOYMENT_README.md#-troubleshooting
Ready? Start with: ./deploy.sh 🚀
Or read DEPLOYMENT_README.md for the full guide.