vcpkg-harbor
vcpkg-harbor
Section titled “vcpkg-harbor”Binary cache server for vcpkg with plugin-based storage backends
vcpkg-harbor is a high-performance binary cache server designed for Microsoft’s vcpkg package manager. It allows teams to share pre-built C++ packages, dramatically reducing build times.
Features
Section titled “Features”- Multiple Storage Backends: MinIO, AWS S3, Azure Blob, Google Cloud Storage, or local filesystem
- Plugin Architecture: Easy to add custom storage backends
- Web Dashboard: Monitor cache statistics and browse packages
- Prometheus Metrics: Built-in metrics endpoint for monitoring
- Authentication: Token and HTTP Basic authentication support
- High Performance: Async Python with streaming uploads/downloads
Quick Start
Section titled “Quick Start”Using Docker Compose (Recommended)
Section titled “Using Docker Compose (Recommended)”# Clone the repositorygit clone https://github.com/rennerdo30/vcpkg-harbor.gitcd vcpkg-harbor
# Start with Docker Compose (includes MinIO)docker-compose up -dUsing pip
Section titled “Using pip”# Install vcpkg-harborpip install vcpkg-harbor
# Start with filesystem storageVCPKG_STORAGE_TYPE=filesystem vcpkg-harborConfigure vcpkg
Section titled “Configure vcpkg”# Set the binary cache URLexport VCPKG_BINARY_SOURCES="http,http://localhost:15151/{name}/{version}/{sha}"
# Install packages (will cache binaries)vcpkg install zlib boostArchitecture
Section titled “Architecture”┌─────────────────┐ ┌─────────────────┐│ vcpkg client │────▶│ vcpkg-harbor │└─────────────────┘ └────────┬────────┘ │ ┌────────────┼────────────┐ ▼ ▼ ▼ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ MinIO │ │ S3 │ │ Azure │ └─────────┘ └─────────┘ └─────────┘Documentation
Section titled “Documentation”License
Section titled “License”MIT License - see LICENSE for details.