Live data from Hacker News

Alternatives to MinIO for single-node local S3

rmoff.net

71–80 of 112 posts

Re: Alternatives to MinIO for single-node local S3

#71

Filestash ( https://github.com/mickael-kerjean/filestash ) has a s3 gateway plugin that I made. It proxy the S3 traffic to any downstream storage: SFTP, FTP, another S3, SMB, NFS, IPFS, ...

How does that handle concurrency (e.g. updates being atomic, conditional PUT) and data consistency after a crash? Getting that right over generic backends sounds challenging, to say the least.

Re: Alternatives to MinIO for single-node local S3

#72
post #13

A notable mention should also be Versity GW, https://github.com/versity/versitygw/

I've been using it for local development for a while now. My goal was to replace MinIO, which I could run and configure with a single Docker command. VersityGW works just as well for that.

Re: Alternatives to MinIO for single-node local S3

#75
I'm still disappointed, that there is no S3 CNCF sponsored process. It seems to be such an important part of the cloud native ecosystem, every big use case needs some way to store blobs of data.

But no, I'm also not about to start one or try to make something like SeaweedFS a community supported project that has a chance to be picked up by the CNCF, so I'm part of the problem.

Re: Alternatives to MinIO for single-node local S3

#76
post #22
post #2

Just use the damn file system. Why does everyone have to put HTTP between everything?

Because if you ship a tool with s3 support, the customer can decide if he wants to store in the cloud, or spin up a docker container locally.

The same argument can be made for the other side: the customer can also trivially mount the S3 bucket as a filesystem, if you decide to ship the tool with filesystem support instead.

Re: Alternatives to MinIO for single-node local S3

#77
post #8
post #2

Just use the damn file system. Why does everyone have to put HTTP between everything?

Because you want to mock the tools you are going to use in production locally or in CI. Really good reasons to not totally change what you are doing in your app between environments.

> Really good reasons to not totally change what you are doing in your app between environments.

Mocks do that.

If you want to not totally change what you are doing in your app between environments, point it at an actual S3 bucket in all environments.

Re: Alternatives to MinIO for single-node local S3

#79
Does anyone here have experience using some of the newer S3 family API features like locking with any of the self-hostable options? After reading about celld's Litestream + locking on S3 approach (https://github.com/denoland/celld) I got curious about that style of deployment as a way to consolidate small tools so their state is just centralize S3 buckets, but from a bit of reading support for the features like locking is uneven.

Re: Alternatives to MinIO for single-node local S3

#80

Does anyone here have experience using some of the newer S3 family API features like locking with any of the self-hostable options? After reading about celld's Litestream + locking on S3 approach ( https://github.com/denoland/celld ) I got curious about that style of deployment as a way to consolidate small tools so their state is just centralize S3 buckets, but from a bit of reading support for the features like loc…

Its not locking, it needs consistent conditional PUT. Minio did have that, Rustfs does, Garage is eventually consistent so explicitly does not support it correctly.
Post reply on HN