feat: v1.1.0 - Production-Ready Docker Deployment

🚀 Major Release: DigiServer v1.1.0 Production Deployment

## 📁 Project Restructure
- Moved all application code to app/ directory for Docker containerization
- Centralized persistent data in data/ directory with volume mounting
- Removed development artifacts and cleaned up project structure

## 🐳 Docker Integration
- Added production-ready Dockerfile with LibreOffice and poppler-utils
- Updated docker-compose.yml for production deployment
- Added .dockerignore for optimized build context
- Created automated deployment script (deploy-docker.sh)
- Added cleanup script (cleanup-docker.sh)

## 📄 Document Processing Enhancements
- Integrated LibreOffice for professional PPTX to PDF conversion
- Implemented PPTX → PDF → 4K JPG workflow for optimal quality
- Added poppler-utils for enhanced PDF processing
- Simplified PDF conversion to 300 DPI for reliability

## 🔧 File Management Improvements
- Fixed absolute path resolution for containerized deployment
- Updated all file deletion functions with proper path handling
- Enhanced bulk delete functions for players and groups
- Improved file upload workflow with consistent path management

## 🛠️ Code Quality & Stability
- Cleaned up pptx_converter.py from 442 to 86 lines
- Removed all Python cache files (__pycache__/, *.pyc)
- Updated file operations for production reliability
- Enhanced error handling and logging

## 📚 Documentation Updates
- Updated README.md with Docker deployment instructions
- Added comprehensive DEPLOYMENT.md guide
- Included production deployment best practices
- Added automated deployment workflow documentation

## 🔐 Security & Production Features
- Environment-based configuration
- Health checks and container monitoring
- Automated admin user creation
- Volume-mounted persistent data
- Production logging and error handling

##  Ready for Production
- Clean project structure optimized for Docker
- Automated deployment with ./deploy-docker.sh
- Professional document processing pipeline
- Reliable file management system
- Complete documentation and deployment guides

Access: http://localhost:8880 | Admin: admin/Initial01!
This commit is contained in:
2025-08-05 18:04:02 -04:00
parent 4e5aff1c02
commit 1eb0aa3658
71 changed files with 2017 additions and 379 deletions

View File

@@ -1,21 +1,41 @@
# .env - Flask environment variables
# DigiServer Environment Configuration
# Copy this file to .env and modify the values as needed
# Flask secret key (change this to something secure in production)
SECRET_KEY=Ana_Are_Multe_Mere-Si_Nu_Are_Pere
# Flask Configuration
FLASK_APP=app.py
FLASK_RUN_HOST=0.0.0.0
FLASK_ENV=production
# Flask environment: development or production
FLASK_ENV=development
# Security
SECRET_KEY=Ma_Duc_Dupa_Merele_Lui_Ana
# Change this to a secure random string in production!
# Database location (optional, defaults to instance/dashboard.db)
# Default Admin User
ADMIN_USER=admin
ADMIN_PASSWORD=Initial01!
# Change the default password after first login!
# Database Configuration
# SQLite database file will be created in data/instance/dashboard.db
# SQLALCHEMY_DATABASE_URI=sqlite:///instance/dashboard.db
# Default admin user credentials (used for auto-creation)
DEFAULT_USER=admin
DEFAULT_PASSWORD=1234
# Application Settings
MAX_CONTENT_LENGTH=2147483648 # 2GB in bytes
UPLOAD_FOLDER=static/uploads
UPLOAD_FOLDERLOGO=static/resurse
# Flask server settings
# Server Information
SERVER_VERSION=1.1.0
BUILD_DATE=2025-06-29
# Docker Configuration (for docker-compose.yml)
DIGISERVER_PORT=8880
CONTAINER_NAME=digiserver
# Flask server settings (for development)
HOST=0.0.0.0
PORT=5000
# Maximum upload size (in bytes, 2GB)
MAX_CONTENT_LENGTH=2147483648
# Optional: External Database (for advanced users)
# DATABASE_URL=postgresql://user:password@localhost/digiserver
# DATABASE_URL=mysql://user:password@localhost/digiserver