Commit Graph

5 Commits

Author SHA1 Message Date
BeauTroll
b0fd4ad4b7 Use USER_UID and USER_GID from environment in restore script
Updated restore script to respect USER_UID and USER_GID environment variables
with default values of 1000:1000. This aligns with docker-compose.yml
configuration and allows users to customize file ownership if needed.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-17 06:00:53 +01:00
BeauTroll
e7d3b6cf16 Fix restore script permissions handling with sudo
Add sudo usage for data directory operations to handle Docker-created files
owned by UID 1000. The restore script now properly cleans and extracts data
with correct permissions, preventing "Permission denied" errors when restoring
backups.

Changes:
- Use sudo rm for cleaning existing data directory
- Use sudo tar for extracting backup data
- Add sudo chown to restore proper file ownership (1000:1000)
- Remove redundant success message from Makefile restore target

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-17 05:56:58 +01:00
BeauTroll
9ad3cbe0d7 Fix docker compose ps command usage across scripts
Replace deprecated `docker compose ps | grep` patterns with the more reliable `docker compose ps --status running --services | grep` command. This ensures consistent container status checking across backup, restore, and update scripts.

Also fix regex pattern in update.sh for French "oui" validation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-17 05:51:12 +01:00
BeauTroll
eff651e720 Enhance backup/restore/update scripts with security and best practices
- Security improvements: set -euo pipefail, secure .env loading, safe PGPASSWORD handling
- Add comprehensive logging to ./logs/ directory for all operations
- Implement SHA256 checksums for backup integrity verification
- Add lock file mechanism to prevent concurrent backups
- Improve error handling with detailed exit codes and cleanup functions
- Add safety backup of current DB before restore operations
- Backup docker-compose.yml before updates with auto-restore on failure
- Replace wget with curl for better reliability in health checks
- Use find -mindepth for safer data directory cleanup
- Add progress indicators with file sizes and operation statistics
- Validate paths and checksums before restore operations
- All operations now log to timestamped files with full traceability

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-17 05:42:54 +01:00
BeauTroll
6cb3d4239e Restructure project following production-ready standards
- Add comprehensive docker-compose configuration with health checks
- Create Makefile with 16 utility commands for easy management
- Implement robust backup/restore/update scripts with error handling
- Add optimized PostgreSQL configuration for Gitea workload
- Enhance .env.example with clear dev/prod sections and documentation
- Create comprehensive README with installation, configuration, and maintenance guides
- Improve .gitignore to exclude all sensitive and generated files
- Add Redis persistence (AOF) and memory limits
- Configure service dependencies with health conditions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-16 19:12:43 +01:00