Appwrite's Storage Service can be configured to store files locally, or with self-hosted and cloud storage services. By default, Appwrite's Storage Service stores files on your server's local storage. If you expect large volumes of data or the need to have scalable data storage, you may choose to use a separate storage service.

Available adapters

Appwrite supports AWS S3, Digital Ocean Spaces, Backblaze, Akamai Object Storage, and Wasabi as storage adapters. Some of these services can be self-hosted, just like Appwrite.

You can select which storage adapter to use by setting the _APP_STORAGE_DEVICE environment variable. Valid values are local, s3, dospaces, backblaze, linode, and wasabi. Each storage adapter requires its own set of additional environment variables to configure.

Learn more about storage environment variables

Maximum file size

The maximum size for a single file upload is controlled by the _APP_STORAGE_LIMIT environment variable, which defaults to 30 MB. Learn more about environment variables.

Applying changes

After editing your docker-compose.yml or .env files, you will need to recreate your Appwrite stack by running the following compose command in your terminal.

docker compose up -d

You can verify if the changes have been successfully applied by running this command:

docker compose exec appwrite vars