- Add file package to runtime environment
- Fix build error where file command was not found
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replaced Bash for loop syntax that's not supported in GitLab CI
- Converted: "for i in {1..15}; do...done" to individual echo-sleep commands
- Maintains the same functionality with 15-second wait countdown
- Each step now properly formatted as separate YAML array entries
- Preserves the enhanced logging experience while fixing syntax compatibility
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
🔧 CI/CD Pipeline Improvements:
- Added comprehensive logging with emojis for better readability
- Detailed environment information display
- Step-by-step progress tracking with timestamps
- Enhanced Docker build progress with --progress=plain
- Container deployment validation and health checks
- Network connectivity testing and port monitoring
- Storage usage reporting and cleanup operations
🏗️ Dockerfile Enhancements:
- Added verbose logging for every build stage
- Go environment verification and dependency tracking
- Detailed compilation progress with file sizes
- Runtime environment preparation checks
- Built-in health check configuration
- Enhanced startup logging with service URLs
- Error-friendly fallback messages
📊 Debugging Features:
- Build log preservation (build.log file)
- Container state inspection and JSON formatting
- Port listening status verification
- Service availability testing with retries
- Comprehensive error reporting with context
- Container ID tracking for reference
🎯 Key Benefits:
- Easy problem identification during CI/CD
- Clear visibility into build and deployment process
- Service health monitoring and validation
- Streamlined troubleshooting workflow
- Professional logging presentation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed docker-compose dependency, using direct Docker run commands
- Kept all deployment features: auto-restart, health check, logging
- Direct Docker container deployment from private registry image
- Added comprehensive environment variables for RustFS backend
- Maintained port mapping (8080:8080) and volume mounting
- Added detailed status reporting and health check validation
- Works with local Dockerfile only, no docker-compose.yml needed
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added docker-in-docker service for container deployment
- Created dynamic docker-compose.yml with full configuration
- Added container auto-restart policy (unless-stopped)
- Configured health check for service monitoring
- Added environment variables for RustFS backend
- Set up port mapping (8080:8080) and network configuration
- Added logging configuration with rotation
- Included deployment validation and status reporting
- Service will auto-pull from private registry and deploy
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added docker tag and push commands to push image to private registry
- Pushed image will be: 192.168.1.154:31010/file-system-server:latest
- Commented out deploy_service stage that requires shell runner
- Now CI/CD will successfully build and push image to your registry
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added GOPROXY=https://goproxy.cn,direct for Chinese mirror
- Added GOSUMDB=sum.golang.google.cn for checksum database
- Fixes timeout issues when downloading Go modules during CI/CD build
- Resolves build failure due to network connectivity to proxy.golang.org
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Updated all image paths to include docker/ prefix
- .gitlab-ci.yml: 192.168.1.154:31010/docker/alpine:latest
- Dockerfile: Both build and run stages use docker/alpine:latest
- Matches private registry structure where images are in docker/ directory
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Changed .gitlab-ci.yml back to use 192.168.1.154:31010/alpine:latest and docker/compose:latest
- Updated Dockerfile to use private registry alpine image
- Fixed Docker installation order in CI/CD
- All images now consistently use private registry
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Reverted to using Docker Hub images (alpine:latest, docker/compose:latest)
- This allows CI/CD to work while private registry is being configured
- TODO: Configure private registry and switch back to private images
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Changed FROM alpine:latest to FROM 192.168.1.154:31010/alpine:latest
- Added push-images.bat script to help push base images to private registry
- Ensures all CI/CD pipeline uses consistent registry sources
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>