S3-Backed File Storage
ValkyrAI routes file operations through a provider-agnostic StorageDriver abstraction. Production can use AWS S3 while local development uses the filesystem.
Key Facts
| Area | Detail |
|---|---|
| Production backend | AWS S3 |
| Development backend | Local filesystem |
| Credentials | IAM role preferred; no hardcoded secrets |
| Tenant isolation | Key prefixes by organization and space |
| Health checks | /actuator/health/s3StorageHealth, /actuator/health/localStorageHealth |
| API impact | Upload APIs remain stable across drivers |
Development Configuration
export VALKYRAI_FILE_DRIVER=local
export VALKYRAI_FILE_SERVICE_LOCAL_ROOT=/tmp/valkyrai-files
Production Configuration
export VALKYRAI_FILE_DRIVER=s3
export VALKYRAI_FILE_SERVICE_S3_ENABLED=true
export VALKYRAI_FILE_SERVICE_S3_BUCKET=valkyr-prod-user-content
export VALKYRAI_FILE_SERVICE_S3_PREFIX=prod
export AWS_REGION=us-west-2
Health Check
curl http://localhost:8080/actuator/health/s3StorageHealth | jq .
Related: