vcpkg-harbor is configured through environment variables. All variables are prefixed with VCPKG_.
Create a .env file in your project directory:
# Copy the example configuration
| Variable | Default | Description |
|---|
VCPKG_SERVER_HOST | 0.0.0.0 | Host to bind the server to |
VCPKG_SERVER_PORT | 15151 | Port to bind the server to |
VCPKG_SERVER_WORKERS | 4 | Number of worker processes |
VCPKG_SERVER_RELOAD | false | Enable auto-reload (development) |
VCPKG_SERVER_READ_ONLY | false | Run in read-only mode |
VCPKG_SERVER_WRITE_ONLY | false | Run in write-only mode |
| Variable | Default | Description |
|---|
VCPKG_STORAGE_TYPE | minio | Storage backend: minio, filesystem, s3, azure, gcs |
VCPKG_STORAGE_PATH | ./cache | Path for filesystem storage |
| Variable | Default | Description |
|---|
VCPKG_MINIO_ENDPOINT | localhost:9000 | MinIO server endpoint |
VCPKG_MINIO_ACCESS_KEY | minioadmin | Access key |
VCPKG_MINIO_SECRET_KEY | minioadmin | Secret key |
VCPKG_MINIO_BUCKET | vcpkg-harbor | Bucket name |
VCPKG_MINIO_SECURE | false | Use HTTPS |
| Variable | Default | Description |
|---|
VCPKG_S3_BUCKET | vcpkg-harbor | S3 bucket name |
VCPKG_S3_REGION | us-east-1 | AWS region |
VCPKG_S3_ACCESS_KEY_ID | - | AWS access key ID |
VCPKG_S3_SECRET_ACCESS_KEY | - | AWS secret access key |
VCPKG_S3_ENDPOINT_URL | - | Custom S3 endpoint (for S3-compatible services) |
| Variable | Default | Description |
|---|
VCPKG_AZURE_CONNECTION_STRING | - | Azure connection string |
VCPKG_AZURE_ACCOUNT_NAME | - | Storage account name |
VCPKG_AZURE_ACCOUNT_KEY | - | Storage account key |
VCPKG_AZURE_CONTAINER | vcpkg-harbor | Container name |
| Variable | Default | Description |
|---|
VCPKG_GCS_BUCKET | vcpkg-harbor | GCS bucket name |
VCPKG_GCS_PROJECT | - | GCP project ID |
VCPKG_GCS_CREDENTIALS_FILE | - | Path to service account JSON |
| Variable | Default | Description |
|---|
VCPKG_LOG_LEVEL | INFO | Log level: DEBUG, INFO, WARNING, ERROR |
VCPKG_LOG_JSON | false | Output logs in JSON format |
VCPKG_LOG_FILE | logs/vcpkg-harbor.log | Log file path (null to disable) |
VCPKG_LOG_RETENTION_DAYS | 30 | Log file retention period |
| Variable | Default | Description |
|---|
VCPKG_AUTH_ENABLED | false | Enable authentication |
VCPKG_AUTH_TYPE | none | Auth type: none, token, basic |
VCPKG_AUTH_TOKEN | - | API token (for token auth) |
VCPKG_AUTH_BASIC_USERS | - | User credentials (for basic auth) |
| Variable | Default | Description |
|---|
VCPKG_METRICS_ENABLED | true | Enable Prometheus metrics |
VCPKG_METRICS_PATH | /metrics | Metrics endpoint path |
VCPKG_DASHBOARD_ENABLED | true | Enable web dashboard |
VCPKG_DASHBOARD_PATH | / | Dashboard base path |
VCPKG_S3_BUCKET=my-vcpkg-cache
VCPKG_S3_REGION=us-west-2
VCPKG_AUTH_TOKEN=your-secret-token
VCPKG_STORAGE_TYPE=filesystem
VCPKG_STORAGE_PATH=./cache