Object Storage Workloads
S3-compatible distributed object storage for files and backups.
Available Workloads
Section titled “Available Workloads”Garage
Section titled “Garage”Lightweight S3-compatible distributed object storage.
Garage Features:
- S3 API compatible
- Distributed and fault-tolerant
- Lightweight (written in Rust)
- No single point of failure
- Automatic data replication
Garage Use Cases:
- Application file storage
- Backup and archival
- Static website hosting
- Media storage
- Development and testing S3 workflows
Garage Deployment:
loko workloads add garage --nowloko workloads connect garageGarage Endpoints:
- S3 API: Port 3900
- Admin API: Port 3903
Garage Configuration:
Garage requires initial setup to create access keys:
# Get the garage podkubectl get pods -n loko-workloads -l app=garage
# Access garage CLIkubectl exec -it garage-0 -n loko-workloads -- garage
# Create a keygarage key create my-app-key
# Allow key to access a bucketgarage bucket create my-bucketgarage bucket allow my-bucket --read --write --key my-app-keyGarage S3 Client Configuration:
# Python with boto3import boto3
s3 = boto3.client( 's3', endpoint_url='https://garage.${LOKO_DOMAIN}:3900', aws_access_key_id='<your-access-key>', aws_secret_access_key='<your-secret-key>', region_name='garage')
# Upload files3.upload_file('local-file.txt', 'my-bucket', 'remote-file.txt')Garage Chart: groundhog2k/garage