Live data from Hacker News

MinIO is now in maintenance-mode

github.com

121–130 of 338 posts

Re: MinIO is now in maintenance-mode

#121

It sucks that S3 somehow became the defacto object storage interface, the API is terrible IMO. Too many headers, too many unknowns with support. WebDAV isn't any better, but I feel like we missed an opportunity here for a standardized interface.

To be fair. We still have an opportunity to create a standardized interface for object storage. Funnily enough when Microsoft made their own they did not go for S3 compatible APIs, but Microsoft usually builds APIs their customers can use.

Re: MinIO is now in maintenance-mode

#122
post #7

Is this not the best thing that could happen? Like now its in maintenance, it can be forked without any potential license change in the future, or any new features that are in that license change... This allows anyone to continue working on this, right? Or did i miss something?

> ... it can be forked without any potential license change in the future ... It is useful to remember that one may fork at the commit before a license change.

It is also useful to remember that MinIO has historically held to an absurd interpretation of the AGPL -- that it spreads (again, according to them) to software that communicates with MinIO via the REST API/CLI.

I assume forks, and software that uses them will be held to the same requirements.

Re: MinIO is now in maintenance-mode

#123
post #87
post #33

They have been removing features from the open source version for a while. The closest alternative seems to be RustFS. Has anyone tried it? I was waiting until they support site replication before switching.

Garage is a popular alternative to Minio. https://garagehq.deuxfleurs.fr I hadn't heard of RustFS and it looks interesting, although I nearly clicked away based on the sheer volume of marketing wank on their main page. The GitHub repo is here: https://github.com/rustfs/rustfs

I use garage at home, single node setup. It's very easy and fast, I'm happy with it. You're missing out on a UI for it, but MountainDuck / CyberDuck solves that problem for me.

Re: MinIO is now in maintenance-mode

#124
post #79

Shocker... they abandoned POSIX compatibility, built a massively over-complicated product, then failed to compete with things like Ceph on the metal side or ubiquitous S3/R2/B2 on the cloud side.

> they abandoned POSIX compatibility, built a massively over-complicated product This is a wild sentence--how can you criticize them for abandoning POSIX support __and__ building a massively over-complicated product? Making a reliable POSIX system is inherently very complex.

[deleted]

Re: MinIO is now in maintenance-mode

#125
post #117

Minio is more or less feature complete for most use cases. Actually the last big update of minio removed features (the UI). I am using minio for 5 years and haven't messed with it or used any new thingie for the last 5 years (i.e since I installed it); I only update to new versions. So if the minio maintainers (or anybody that forks the project and wants to work it) can fix any security issues that may occur I don't…

> Actually the last big update of minio removed features (the UI) AFIK they removed it only to move it to their paid version, didn't they?

Well I didn't mind when they removed it and certainly I didn't consider their paid version which is way too expensive for most use cases.

The UI was useful when first configuring the buckets and permissions; if you've got it working (and don't need to change anything) you're good to go. Also, everything can be configured without the UI (not so easily of course).

Re: MinIO is now in maintenance-mode

#127

I use this image on my VPS, it was the last update before they neutered the community version quay.io/minio/minio:RELEASE.2025-04-22T22-12-26Z

This is a way too old version. You should use a newer one instead by downloading the source and built the binaries yourself.

Here's a simple script that does it automagically (you'll need golang installed):

> build-minio-ver.sh

  #!/bin/bash
  set -e

  VERSION=$(git ls-remote --tags https://github.com/minio/minio.git | \
  grep -Eo 'RELEASE\.[0-9T-]+Z' | sort | tail -n1)

  echo "Building MinIO $VERSION ..."

  rm -rf /tmp/minio-build
  git clone --depth 1 https://github.com/minio/minio.git /tmp/minio-build

  cd /tmp/minio-build
  git fetch --tags
  git checkout "$VERSION"

  echo "Building minio..."

  CGO_ENABLED=0 go build -trimpath \
  -ldflags "-s -w \
  -X github.com/minio/minio/cmd.Version=$VERSION \
  -X github.com/minio/minio/cmd.ReleaseTag=$VERSION \
  -X github.com/minio/minio/cmd.CommitID=$(git rev-parse HEAD)" \
  -o "$OLDPWD/minio"

  echo " Binary created at: $(realpath "$OLDPWD/minio")"

  "$OLDPWD/minio" --version

Re: MinIO is now in maintenance-mode

#128

Like many smart people they focused on telling people the "how", and assume visitors to their wall of "AI"/hype text already understand the use-case "why". 1. I like that it is written in Go 2. I saw nothing above what Apache Spark+Hadoop with _consistent_ object stores already offers on Amazon (S3), Google Cloud (GCS), and or Microsoft (Azure Storage, ADLS Gen2) Best of luck, maybe folks should look around for that…

> I saw nothing above what Apache Spark+Hadoop with _consistent_ object stores already offers on Amazon (S3), Google Cloud (GCS), and or Microsoft (Azure Storage, ADLS Gen2) it was very simple to setup, and even if you just leased a bunch of servers off say OVH, far FAR cheaper to run your own than paying any of the big cloud providers. It also had pretty low requirements, ceph can do all that but setup is more compl…

MinIO still makes no sense, as Ceph is fundamentally already RADOS at its core (fully compatible with S3 API.)

For a proper Ceph setup, even the 45drives budget configuration is still not "hobby" grade.

I will have to dive into the MinIO manual at some point, as the value proposition still seems like a mystery. Cheers =3

Re: MinIO is now in maintenance-mode

#129
post #115

Earlier quoted context omitted.

Its worse than I thought: https://blog.min.io/weka-violates-minios-open-source-license... They think they can revoke someone's AGPL license. That's not at all how that license works!

Yes, it is. Although https://www.gnu.org/licenses/agpl-3.0.html says > All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. it also says > You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically termin…

> I don't think a GPL violation case has yet been litigated.

It has, though it has mainly been under the "breach of contract" approach and not under "copyright infringement" approach. See https://en.wikipedia.org/wiki/Open_source_license_litigation

Re: MinIO is now in maintenance-mode

#130
post #59

It sucks that S3 somehow became the defacto object storage interface, the API is terrible IMO. Too many headers, too many unknowns with support. WebDAV isn't any better, but I feel like we missed an opportunity here for a standardized interface.

It was better. When it first came out, it was a pretty simple API, at least simpler than alternatives (IIRC, I could just be thinking with nostalgia). I think it's only gotten as complicated as it has as new features have been organically added. I'm sure there are good use cases for everything, but it does beg the question -- is a better API possible for object storage? What's the minimal API required? GET/POST/DELET…

I suspect there is no decent "minimal" API. Once you get to tens of millions of objects in a given prefix, you need server side filtering logic. And to make it worse, you need multiple ways to do that.

For example, did you know that date filtering in S3 is based on string prefix matching against an ISO8601/RFC3339 style string representation? Want all objects created between 2024-01-01 and 2024-06-30? You'll need to construct six YYYY-MM prefixes (one per month) for datetime and add them as filter array elements.

As a result the service abbreviation is also incorrect these days. Originally the first S stood for "Simple". With all the additions they've had to bolt on, S2 would be far more appropriate a name.

Post reply on HN