- Add setAdminPassword.js utility for setting password inside container
- Add set-admin-password.sh for easy Docker exec password setting
- Add reset-to-default-password.sh for quick testing (sets to admin123)
- Add debug logging to password verification for troubleshooting
- Improve error handling when password hash is missing
These tools make it much easier to manage the admin password without
dealing with bcrypt hash generation and .env file formatting issues.
Usage:
- Set custom password: ./scripts/set-admin-password.sh
- Reset to default: ./scripts/reset-to-default-password.sh
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update setupProxy.js to forward X-Real-IP and X-Forwarded-For headers
- Improve IP detection in backend middleware to prioritize X-Real-IP
- Add debug logging for IP detection in development mode
- Update .env.example with clearer IP configuration examples
- Enable debug logging in docker-compose.dev.yml
This fixes the issue where Docker network IPs (172.20.x.x) were being
detected instead of the real client IP addresses.
To fix IP restrictions, update your .env file:
ALLOWED_IPS=10.30.30.0/24,<your-other-ips>
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix MinIO service temp directory path (was going to /temp instead of /app/temp)
- Add TEMP_DIR environment variable support
- Make audit logger optional in development mode to avoid permission issues
- Ensure log directory exists before creating loggers
- Update docker-entrypoint.sh to create temp directory
- Create backend/temp directory with .gitkeep
- Update .gitignore to exclude temp files but keep directory structure
This fixes the EACCES permission errors that were causing the backend to restart.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix logger path to use relative path from backend directory
- Add LOG_DIR environment variable support for custom log paths
- Create logs directory with .gitkeep to ensure it exists
- Add docker-entrypoint.sh to handle runtime permissions
- Optimize Dockerfile to set proper permissions for nodejs user
- Ensure logs directory is writable by the application
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Backend: Express.js API with MinIO CLI integration
- Frontend: React with Material-UI for non-technical users
- Features: Bucket management, user creation, storage monitoring
- Security: JWT auth, IP filtering, encrypted passwords
- Docker support for easy deployment
- Automated weekly storage reports
- Setup and deployment scripts included