Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork271
S3 compatible object storage service that stores metadata in Postgres
License
supabase/storage
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
A scalable, lightweight object storage service.
Readthis post on why we decided to build a new object storage service.
- Multi-protocol support (HTTP, TUS, S3, Iceberg)
- Uses Postgres as its datastore for storing metadata
- Authorization rules are written as Postgres Row Level Security policies
- Integrates with S3 Compatible Storages
- Extremely lightweight and performant
Supported Protocols
- HTTP/REST
- TUS Resumable Upload
- S3 Compatible API
- Iceberg REST Catalog
- Copy
.env.sampleto.envfile. - Copy
.env.test.sampleto.env.test.
cp .env.sample .env&& cp .env.test.sample .env.testYour root directory should now have both.env and.env.test files.
- Then run the following:
# this sets up a postgres database and postgrest locally via dockernpm run infra:restart# Start the storage servernpm run dev
The server should now be running athttp://localhost:5000/
The following request should insert and return the list of buckets.
# insert a bucket named avatarscurl --location --request POST'http://localhost:5000/bucket' \--header'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoic2VydmljZV9yb2xlIiwiaWF0IjoxNjEzNTMxOTg1LCJleHAiOjE5MjkxMDc5ODV9.th84OKK0Iz8QchDyXZRrojmKSEZ-OuitQm_5DvLiSIc' \--header'Content-Type: application/json' \--data-raw'{ "name": "avatars"}'# get bucketscurl --location --request GET'http://localhost:5000/bucket' \--header'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoic2VydmljZV9yb2xlIiwiaWF0IjoxNjEzNTMxOTg1LCJleHAiOjE5MjkxMDc5ODV9.th84OKK0Iz8QchDyXZRrojmKSEZ-OuitQm_5DvLiSIc'
To perform your tests you can run the following command:npm test
About
S3 compatible object storage service that stores metadata in Postgres
Topics
Resources
License
Code of conduct
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
