-
Notifications
You must be signed in to change notification settings - Fork 1
Configuration File Options
Scott E. Graves edited this page Oct 16, 2025
·
1 revision
This wiki describes configuration settings for Repertory across all provider types β S3, Sia, and Remote β with β meaning settings update live and β meaning they require a restart.
| Setting | Description | Providers | Live Update |
|---|---|---|---|
| ApiUser | API username for authentication | β Remote / β S3 / β Sia | β |
| ApiPassword | API password for authentication | β Remote / β S3 / β Sia | β |
| ApiPort | API listening port | β Remote / β S3 / β Sia | β |
| DatabaseType | Storage backend type (rocksdb, sqlite) | β Remote / β S3 / β Sia | β |
| DownloadTimeoutSeconds | Max time in seconds before a download is aborted | β S3 / β Sia | β |
| EnableDownloadTimeout | Whether download timeout is enforced | β S3 / β Sia | β |
| EnableDriveEvents | Enable event tracking for drive operations | β Remote / β S3 / β Sia | β |
| EventLevel | Logging verbosity (info, debug, etc.) | β Remote / β S3 / β Sia | β |
| EvictionDelayMinutes | Delay before cached files are evicted | β S3 / β Sia | β |
| EvictionUseAccessedTime | Use last access time for eviction logic | β S3 / β Sia | β |
| HighFreqIntervalSeconds | Interval for high-frequency tasks | β S3 / β Sia | β |
| LowFreqIntervalSeconds | Interval for low-frequency tasks | β S3 / β Sia | β |
| MedFreqIntervalSeconds | Interval for medium-frequency tasks | β S3 / β Sia | β |
| MaxCacheSizeBytes | Maximum cache size in bytes | β S3 / β Sia | β |
| MaxUploadCount | Max simultaneous uploads | β S3 / β Sia | β |
| OnlineCheckRetrySeconds | Seconds between online check retries | β S3 / β Sia | β |
| PreferredDownloadType | Download strategy (default, direct, ring_buffer) | β S3 / β Sia | β |
| RemoteMount.ApiPort | API port for remote mounting | β S3 / β Sia | β |
| RemoteMount.ClientPoolSize | Number of pooled clients for remote mounting | β S3 / β Sia | β |
| RemoteMount.Enable | Enable remote mounting | β S3 / β Sia | β |
| RemoteMount.EncryptionToken | Encryption token for secure remote mount | β S3 / β Sia | β |
| RetryReadCount | Number of read retries before failing | β S3 / β Sia | β |
| RingBufferFileSize | Size of the ring buffer file in MiB | β S3 / β Sia | β |
| TaskWaitMs | Delay between queued tasks in ms | β Remote / β S3 / β Sia | β |
| Version | Config schema version | β Remote / β S3 / β Sia | β |
Provides cloud storage access using S3-compatible APIs, with optional transparent encryption passthrough.
{
"ApiPassword": "<random generated rpc password>",
"ApiPort": 10100,
"ApiUser": "repertory",
"DatabaseType": "rocksdb",
"DownloadTimeoutSeconds": 30,
"EnableDownloadTimeout": true,
"EnableDriveEvents": false,
"EventLevel": "info",
"EvictionDelayMinutes": 1,
"EvictionUseAccessedTime": false,
"HighFreqIntervalSeconds": 30,
"LowFreqIntervalSeconds": 3600,
"MaxCacheSizeBytes": 21474836480,
"MaxUploadCount": 5,
"MedFreqIntervalSeconds": 120,
"OnlineCheckRetrySeconds": 60,
"PreferredDownloadType": "default",
"RemoteMount": {
"ApiPort": 20100,
"ClientPoolSize": 20,
"Enable": false,
"EncryptionToken": ""
},
"RetryReadCount": 6,
"RingBufferFileSize": 512,
"S3Config": {
"AccessKey": "<my access key>",
"Bucket": "<my bucket name>",
"EncryptionToken": "",
"ForceLegacyEncryption": false,
"Region": "any",
"SecretKey": "<my secret key>",
"TimeoutMs": 60000,
"URL": "http://localhost:9000",
"UsePathStyle": true,
"UseRegionInURL": false
},
"TaskWaitMs": 100,
"Version": 1
}| Setting | Description | Live Update |
|---|---|---|
| S3Config.AccessKey | AWS/S3 access key | β |
| S3Config.Bucket | Bucket name | β |
| S3Config.EncryptionToken | Encryption key/token for encrypted buckets | β |
| S3Config.ForceLegacyEncryption | Disables Argon2id KDF and switches from Base-64 object key names to hex strings. Bucket must be empty or must be a non-empty encrypted bucket created using repertory v2.0.x. If this setting is false, the bucket will be automatically upgraded to v2.1.0 behavior (Argon2id and Base-64 object key names) when empty. |
β |
| S3Config.Region | S3 region | β |
| S3Config.SecretKey | AWS/S3 secret key | β |
| S3Config.TimeoutMs | Timeout for S3 API calls in ms | β |
| S3Config.URL | Endpoint URL | β |
| S3Config.UsePathStyle | Use path-style addressing | β |
| S3Config.UseRegionInURL | Include region in endpoint URL | β |
Integrates with the Sia renterd backend for decentralized cloud storage.
{
"ApiPassword": "<random generated rpc password>",
"ApiPort": 10000,
"ApiUser": "repertory",
"DatabaseType": "rocksdb",
"DownloadTimeoutSeconds": 30,
"EnableDownloadTimeout": true,
"EnableDriveEvents": false,
"EventLevel": "info",
"EvictionDelayMinutes": 1,
"EvictionUseAccessedTime": false,
"HighFreqIntervalSeconds": 30,
"HostConfig": {
"AgentString": "Sia-Agent",
"ApiPassword": "<renterd api password>",
"ApiPort": 9980,
"ApiUser": "",
"HostNameOrIp": "localhost",
"Path": "",
"Protocol": "http",
"TimeoutMs": 60000
},
"LowFreqIntervalSeconds": 3600,
"MaxCacheSizeBytes": 21474836480,
"MaxUploadCount": 5,
"MedFreqIntervalSeconds": 120,
"OnlineCheckRetrySeconds": 60,
"PreferredDownloadType": "default",
"RemoteMount": {
"ApiPort": 20000,
"ClientPoolSize": 20,
"Enable": false,
"EncryptionToken": ""
},
"RetryReadCount": 6,
"RingBufferFileSize": 512,
"SiaConfig": {
"Bucket": "my_bucket"
},
"TaskWaitMs": 100,
"Version": 1
}| Setting | Description | Live Update |
|---|---|---|
| HostConfig.AgentString | User-agent string for API requests | β |
| HostConfig.ApiPassword | renterd API password | β |
| HostConfig.ApiPort | renterd API port | β |
| HostConfig.ApiUser | renterd API user | β |
| HostConfig.HostNameOrIp | renterd host address | β |
| HostConfig.Path | API path | β |
| HostConfig.Protocol | http or https | β |
| HostConfig.TimeoutMs | API timeout in ms | β |
| SiaConfig.Bucket | Target Sia bucket | β |
Connects to another Repertory instance over the network.
{
"ApiPassword": "<random generated rpc password>",
"ApiPort": 10010,
"ApiUser": "repertory",
"EnableDriveEvents": false,
"EventLevel": "info",
"RemoteConfig": {
"ApiPort": 20000,
"EncryptionToken": "<my secure password>",
"HostNameOrIp": "192.168.1.10",
"MaxConnections": 20,
"ReceiveTimeoutMs": 120000,
"SendTimeoutMs": 30000
},
"TaskWaitMs": 100,
"Version": 1
}| Setting | Description | Live Update |
|---|---|---|
| RemoteConfig.ApiPort | Remote instance API port | β |
| RemoteConfig.EncryptionToken | Token used for secure communication | β |
| RemoteConfig.HostNameOrIp | Remote instance hostname/IP | β |
| RemoteConfig.MaxConnections | Max simultaneous connections | β |
| RemoteConfig.ReceiveTimeoutMs | Receive timeout in ms | β |
| RemoteConfig.SendTimeoutMs | Send timeout in ms | β |
You can update most settings directly from the CLI using dotted notation for nested values.
repertory -set S3Config.Bucket my_bucket_nameRules:
- Nested values (with a dot
.in the name) β do not update live β restart is required. - All others β can be updated live.