Docker deployment improvements: fixed backup/restore, sticky headers, quality code display
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
version: '3.8'
|
||||
#version: '3.8'
|
||||
|
||||
# ============================================================================
|
||||
# Recticel Quality Application - Docker Compose Configuration
|
||||
# Simplified configuration - most settings are in .env file
|
||||
# Production-ready with mapped volumes for code, data, and backups
|
||||
# ============================================================================
|
||||
|
||||
services:
|
||||
@@ -26,8 +26,12 @@ services:
|
||||
- "${DB_PORT}:3306"
|
||||
|
||||
volumes:
|
||||
# Database data persistence - CRITICAL: Do not delete this volume
|
||||
- ${DB_DATA_PATH}:/var/lib/mysql
|
||||
# Database initialization script
|
||||
- ./init-db.sql:/docker-entrypoint-initdb.d/01-init.sql:ro
|
||||
# Backup folder mapped for easy database dumps
|
||||
- ${BACKUP_PATH}:/backups
|
||||
|
||||
networks:
|
||||
- quality-app-network
|
||||
@@ -116,9 +120,16 @@ services:
|
||||
- "${APP_PORT}:8781"
|
||||
|
||||
volumes:
|
||||
# Application code - mapped for easy updates without rebuilding
|
||||
- ${APP_CODE_PATH}:/app
|
||||
# Application logs - persistent across container restarts
|
||||
- ${LOGS_PATH}:/srv/quality_app/logs
|
||||
# Instance configuration files (database config)
|
||||
- ${INSTANCE_PATH}:/app/instance
|
||||
# Backup storage - shared with database container
|
||||
- ${BACKUP_PATH}:/srv/quality_app/backups
|
||||
# Host /data folder for direct access (includes /data/backups)
|
||||
- /data:/data
|
||||
|
||||
networks:
|
||||
- quality-app-network
|
||||
@@ -159,13 +170,39 @@ networks:
|
||||
# ============================================================================
|
||||
# USAGE NOTES
|
||||
# ============================================================================
|
||||
# 1. Copy .env.example to .env and customize all values
|
||||
# 2. Set INIT_DB=true and SEED_DB=true for first deployment only
|
||||
# 3. Change default passwords and SECRET_KEY in production
|
||||
# 4. Ensure all volume paths exist with proper permissions:
|
||||
# mkdir -p /srv/quality_app/{mariadb,logs,backups}
|
||||
# 5. Start: docker-compose up -d
|
||||
# 6. Stop: docker-compose down
|
||||
# 7. Logs: docker-compose logs -f web
|
||||
# 8. Rebuild: docker-compose up -d --build
|
||||
# VOLUME STRUCTURE:
|
||||
# ./data/mariadb/ - Database files (MariaDB data directory)
|
||||
# ./config/instance/ - Application configuration (external_server.conf)
|
||||
# ./logs/ - Application logs
|
||||
# ./backups/ - Database backups
|
||||
# ./py_app/ - (Optional) Application code for development
|
||||
#
|
||||
# FIRST TIME SETUP:
|
||||
# 1. Create directory structure:
|
||||
# mkdir -p data/mariadb config/instance logs backups
|
||||
# 2. Copy .env.example to .env and customize all values
|
||||
# 3. Set INIT_DB=true and SEED_DB=true in .env for first deployment
|
||||
# 4. Change default passwords and SECRET_KEY in .env (CRITICAL!)
|
||||
# 5. Build and start: docker-compose up -d --build
|
||||
#
|
||||
# SUBSEQUENT DEPLOYMENTS:
|
||||
# 1. Set INIT_DB=false and SEED_DB=false in .env
|
||||
# 2. Start: docker-compose up -d
|
||||
#
|
||||
# COMMANDS:
|
||||
# - Build and start: docker-compose up -d --build
|
||||
# - Stop: docker-compose down
|
||||
# - Stop & remove data: docker-compose down -v (WARNING: deletes database!)
|
||||
# - View logs: docker-compose logs -f web
|
||||
# - Database logs: docker-compose logs -f db
|
||||
# - Restart: docker-compose restart
|
||||
# - Rebuild image: docker-compose build --no-cache web
|
||||
#
|
||||
# BACKUP:
|
||||
# - Manual backup: docker-compose exec db mysqldump -u trasabilitate -p trasabilitate > backups/manual_backup.sql
|
||||
# - Restore: docker-compose exec -T db mysql -u trasabilitate -p trasabilitate < backups/backup.sql
|
||||
#
|
||||
# DATABASE ACCESS:
|
||||
# - MySQL client: docker-compose exec db mysql -u trasabilitate -p trasabilitate
|
||||
# - From host: mysql -h 127.0.0.1 -P 3306 -u trasabilitate -p
|
||||
# ============================================================================
|
||||
|
||||
Reference in New Issue
Block a user