A self-hosted deployment platform inspired by Vercel, built with Node.js, Docker, Cloudflare R2, and React. This system allows you to build and deploy web applications with automated build processes and asset delivery.
vercel-clone.mp4
- Containerized service that handles repository builds
- Primary functions:
- Clones Git repositories
- Executes builds within Docker containers
- Uploads built assets and code to Cloudflare R2 object storage
- Manages build lifecycle and artifacts
- Core orchestration service responsible for:
- Managing Docker container lifecycle
- Initiating and controlling builds
- Providing real-time build logs via WebSocket connections
- Coordinating between different system components
- React-based web interface offering:
- Repository management
- Build monitoring and control
- Real-time log viewing
- Project configuration
- Handles asset delivery through:
- Streaming applications from R2 storage
- HTTP proxy implementation for efficient content delivery
- Request routing and caching
While this implementation provides core functionality, there are several potential improvements:
Consider migrating container execution to managed services:
- Google Cloud Platform: Cloud Run for containerized workloads
- AWS: ECS on Fargate for serverless container management
- Implement project ID and URL persistence
- Add robust error handling
- Enhance logging and monitoring
- Implement caching strategies
- Add authentication and authorization