Major improvements to the Makefile:
- Auto-detect Docker Compose v2 (docker compose) vs v1 (docker-compose)
- Add new utility commands:
* make logs-all: View logs from all containers
* make shell: Open bash in Nextcloud container
* make db-shell: Open MySQL shell
* make redis-shell: Open Redis CLI (with password support)
* make permissions: Fix file permissions
* make clean: Clean old logs (>30 days) and temp files
- Improve restore command:
* Now requires FILE= parameter for better UX
* Shows helpful error with list of available backups
* Example: make restore FILE=./backups/backup.tar.gz
- Better help organization:
* New "Monitoring" section
* Better documentation for all commands
* More detailed command descriptions
- Simplify health check:
* Use comprehensive check-health.sh script
* Remove duplicate check-health target
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Security (CRITICAL):
- Add .env.example with strong password generation instructions
- Fix path traversal validation in restore.sh (now detects all .. patterns)
- Secure .env loading with set -a/set +a in all scripts
- Add logs/ to .gitignore to prevent credential leaks
Backup & Restore (IMPORTANT):
- Add file locking system to prevent concurrent backups
- Add disk space verification before backup operations
- Generate SHA256 checksums for all backups
- Verify checksums before restoration
- Create safety database backup before restore
- Implement comprehensive logging to ./logs/ directory
- Fix BACKUP_RETENTION_DAYS inconsistency
- Replace dangerous find -delete with safe iteration
Update & Recovery:
- Backup docker-compose.yml before updates with auto-rollback
- Add version display before/after updates
- Increase timeouts to 120s for slow containers
- Dynamic backup suggestion in recover.sh
Compatibility:
- Add Docker Compose v2 support with v1 fallback in all scripts
- Standardized log() function across all scripts
New Features:
- Add check-health.sh: comprehensive system health monitoring
- Add SECURITY.md: complete security documentation
- Update Makefile with check-health and recover commands
- Centralized logging with timestamps and levels
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>