aerogramme.deuxfleurs.fr/content/documentation/cookbook/single-node-garage-storage.md

1.6 KiB

+++ title = "Local storage" weight = 5 +++

Currently, Aerogramme does not support local storage (ie. storing emails on your filesystem directly). It might support this feature in the future, but no ETA is announced yet. In the mean time, we will deploy a single-node Garage cluster to store the data.

Start by following the Garage Quickstart up to "Creating a cluster layout" (included).

Setup your storage

Create one key per user:

garage key create aerogramme
# ...

Do not forget to note the key, it will be needed later.

Create an Aerogramme bucket for each user:

garage bucket create aerogramme-alice
garage bucket create aerogramme-bob
garage bucket create aerogramme-charlie
# ...

Having one bucket per user is an opinionated design choice made to support Aerogramme Per-user storage, per-user encryption goal.

And then allow the aerogramme key on each bucket:

garage bucket allow --read --write --key aerogramme aerogramme-alice
garage bucket allow --read --write --key aerogramme aerogramme-bob
garage bucket allow --read --write --key aerogramme aerogramme-charlie
# ...

Automating it

You can automate this by using the Garage Admin API and the S3 API.

Quota

You can use Garage per-bucket quota to limit the amount of space a user can use, but such data is not reported on the IMAP side.