Zmeel stores file attachments and employee-generated artifacts in object storage. Two providers are supported.
Providers
| Provider | Best for |
|---|
local_disk (default) | Local single-user installs |
s3 | Cloud deployments, multi-user instances |
zmeel configure --section storage
The interactive prompt walks you through selecting a provider and entering any required settings.
local_disk
The default for local installs. Files are written to:
~/.zmeel/instances/default/data/storage/
No additional configuration required.
local_disk is not suitable for cloud or multi-user deployments. Use S3 if you’re running Zmeel on a server or sharing it across a team.
S3-compatible storage
Works with AWS S3, Cloudflare R2, MinIO, and any S3-compatible service.
You’ll need:
| Setting | Description |
|---|
| Bucket name | The S3 bucket to use |
| Region | AWS region (or equivalent) |
| Access key ID | S3 access key |
| Secret access key | S3 secret |
| Endpoint URL | Required for non-AWS providers (e.g. R2, MinIO) |
Cloudflare R2 is a cost-effective S3-compatible option with no egress fees. Set the endpoint to your R2 account URL (e.g. https://<account-id>.r2.cloudflarestorage.com).