Configure Relution
Introduction
Once you have an S3-compatible object storage backend ready - whether self-hosted or cloud-based - you need to configure Relution to use it.
Prerequisites
You’ll need the following information from your object storage provider:
| Setting | Description |
|---|---|
| Endpoint | The S3 API URL |
| Access Key | Authentication key ID |
| Secret Key | Authentication secret |
| Bucket Name | The storage bucket name |
In the configuration examples below, we will use example values matching our SeaweedFS guide. If you are using a different backend or provider, adjust them accordingly.
Configuration
Choose one of the two options below. Both achieve the same result.
Option A: Using application.yml
Add the following to your application.yml:
relution:
storage:
resourceStorageType: S3
s3:
customEndpoint: http://seaweedfs:8333
accessKey: %YOUR-ACCESS-KEY%
secretKey: %YOUR-SECRET-KEY%
bucketName: relution
Option B: Using Environment Variables
Add these environment variables to the relution service in your compose.yml:
services:
relution:
environment:
- RELUTION_STORAGE_RESOURCESTORAGETYPE=S3
- RELUTION_STORAGE_S3_CUSTOMENDPOINT=http://seaweedfs:8333
- RELUTION_STORAGE_S3_ACCESSKEY=%YOUR-ACCESS-KEY%
- RELUTION_STORAGE_S3_SECRETKEY=%YOUR-SECRET-KEY%
- RELUTION_STORAGE_S3_BUCKETNAME=relution
Starting the Services
Pull the latest images:
docker compose pullStart or restart the containers:
docker compose up -dRelution will automatically begin migrating content from the
resourcedatabase table to the object storage bucket.
Monitoring Progress
Watch the migration progress in the logs:
docker logs -f relution
You can also verify files are being created by checking your object storage backend (e.g., via the SeaweedFS web UI or your cloud provider’s console).
Important Notes
⚠️ Irreversible Process: As of Relution 26.0.0, migrating to object storage cannot be reversed.
⚠️ Backup: Ensure your object storage bucket is included in your backup routine. Without this data, server operation and device management cannot be ensured.