Is grist compatible with garage?

For context: garage is an S3 compatible object storage service mostly aimed at self-hosters. It supports a lot, but not all S3 features. Bucket and object versioning, for instance, are missing and I’m wondering if that’s what grist uses under the hood to facilitate its snapshot feature.

I’m asking if grist is compatible because minio has very recently stopped publishing container images as they’re now a “source only” distribution. I could build them myself, but this is only the latest in a long list of user-hostile actions by minio and so I’m looking for alternatives.

I’m a happy grist user and have been using garage for over a year now, so migration would be easy for me.

If garage isn’t compatible, is there another solution that grist might recommend to selfhosters?

Hi @nadir_ishiguro, thanks for your question. I’ve been following what is going on with MinIO too, and looked into this. Yes unfortunately Grist relies on versioning (and, less criticically, object lifecycles) for snapshots, so garage won’t do the job. I see you commented at https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/166, thanks for doing that.

I don’t know of a good replacement for MinIO. The other projects compared against in the feature page you list to are interesting, but I don’t have experience with any of them and haven’t heard of people using them with Grist. Perhaps someone who has could chime in on this thread.

It would be possible, in Grist, to implement the interface it needs for snapshotting directly on a filesystem. But there would be a lot of reinventing the wheel needed, compared to using a store that already has versions and lifecycles.

1 Like

Thanks for the nice answer. I totally get why you wouldn’t want to re-invent all of the snapshotting, especially as I suspect that your big paying customers are much more interested in using actual S3 hosting.

Maybe somebody else will chime in.

Garage would be perfect, but it doesn’t look like they have even started working on the needed features, so certainly not a short term option.

RustFS is another option that’s not listed in the linked comparison. They try to position themselves as a minio alternative, but it’s very new and certainly not at a stage where I’d trust it with my data.

For the time being, I’ll stick with minio, though with how things are going, one should probably have a backup of the source. There’s not much left that they can take away.

1 Like