mrkeyoor.com_
Sat 31 Oct 11:50 UTC
Dataevaluationupdated 05 Oct 2026

minio review

MinIO is an S3-compatible object store that you can run on your own hardware. It gives applications a familiar bucket API without sending their files to a public cloud, but this community repository is now archived and no longer maintained.

-6stars / 7d
Verdict

Our MinIO run built in 169 seconds but finished with 5 failed packages out of 93, and the upstream repository is now archived, so it is a maintenance obligation rather than a sensible new default. Keep an existing deployment only with a written migration or fork plan and your own security process. For a new object store, choose an actively maintained alternative or MinIO's separately licensed AIStor product.

We ran it

Lab card: what happened when we ran minioScreenshot of minio (github.com/minio/minio)
Install✓ · 58s600 packages
Build✓ · 169s
Tests✗ · 436s88 passed · 5 failed of 93 (go test)
Repo1329 files~352,680 lines of source · 37.7 MB · 17 CI workflows · Dockerfile

Answers from our run

Does minio build from source?

Dependencies installed in 58 seconds (600 packages), and the build succeeded in 169 seconds. We cloned commit 7aac2a2 into a clean Debian container with 3 CPUs and no project-specific setup.

Do minio's tests pass?

No. The project's own test command finished in 436 seconds and reported 88 passed, 5 failed (go test).

Who should not use minio?

New production deployments that require an actively maintained upstream: the repository is archived and the README says it is no longer maintained.

What are the alternatives to minio?

Ceph, SeaweedFS, Garage. Our MinIO run built in 169 seconds but finished with 5 failed packages out of 93, and the upstream repository is now archived, so it is a maintenance obligation rather than a sensible new default.

Setup3/5Build passed, but source-only delivery and 5 failed packages add work
Docs3/5The quick start is clear, while deeper guidance lives elsewhere
Community1/5The repository is archived with 44 open issues and 36 open PRs
Maturity3/5A large established codebase whose community upstream has stopped

Discussed on

  1. hnMinIO stops distributing free Docker images733 points
  2. hnMinIO is now in maintenance-mode511 points
  3. hnMinIO repository is no longer maintained500 points
  4. hnMinIO declines to release Docker builds resolving CVE-2025-62506175 points
  5. hnMinio Changes License to AGPL172 points

Who it’s for

Teams maintaining an existing MinIO deployment while they plan a supported replacement or fork.
Developers who need the AGPLv3 source to inspect old behavior, reproduce a historical release, or study an S3-compatible server.
Organizations prepared to own source builds, security review, storage operations, and licensing decisions themselves.

Who it’s NOT for

New production deployments that require an actively maintained upstream: the repository is archived and the README says it is no longer maintained.
Teams that expect current community binaries: MinIO now describes the community edition as source-only, while historical binaries receive no updates.
Proprietary products that have not reviewed AGPLv3 obligations: the README explicitly tells commercial users to validate their licensing position.
Release pipelines that require a green fresh-container test run: our run ended with 5 failed packages out of 93.
Operators who want upstream help with current S3 edge cases: issue 21727 reports incorrect If-None-Match behavior and remains open in the archived tracker.

Setup reality

Our sandbox installed commit 7aac2a2 in 58 seconds, adding 600 Go packages. The build succeeded in 169 seconds. The test command failed after 436 seconds: 88 packages passed and 5 failed out of 93, while the log tail showed several successful internal packages followed only by the final FAIL line.

The README requires Go 1.24 and now offers source installation or a locally built Docker image. A server needs a writable data path and real root credentials; the documented defaults are minioadmin:minioadmin and must not survive outside a local trial.

The checkout had 1,329 files, about 352,680 source lines, and occupied 37.7 MB. It includes a Dockerfile and 17 CI workflow files, but the upstream repository is archived and its community binaries are historical, unmaintained artifacts.

The archived repository changes the buying decision

MinIO still looks like the familiar self-hosted S3 server when you scan the code. The README shows a local server, an embedded browser, the mc client, Docker instructions, and Kubernetes routes. Then the notice at the top settles the question for a new deployment: this repository is no longer maintained. GitHub also marks it archived. A working build cannot make an inactive upstream a good foundation for fresh production data.

The code remains useful. Existing operators need it to understand their servers, investigate behavior, and prepare a move. Developers can still compile an S3-compatible object store under AGPLv3. The practical audience has narrowed, though. This is now source you may inherit or fork, not a community project you can reasonably expect its owner to keep repairing.

Community MinIO is source-only and carries AGPLv3 obligations

The README removed the easy assumption that an official current binary will be waiting. It tells community users to install from source with Go 1.24 or build their own image from the included Dockerfile. Historical binaries remain downloadable, but MinIO says they will not receive updates. For an object store holding production data, that distinction belongs in the architecture decision, not in a later deployment ticket.

Licensing needs the same early attention. The source is AGPLv3, and the README specifically tells users to validate the obligations for their application stack. It directs commercial or proprietary workloads toward AIStor for commercial licensing and support. That is not a reason to avoid free software. It is a reason to have counsel or a qualified owner review how your modifications and network service fit the license before shipping.

What happened when we ran it

Our sandbox installed commit 7aac2a2 in 58 seconds. The Go setup added 600 packages, and the build completed successfully in 169 seconds. We ran it in an unprivileged Debian container with 3 CPUs, 8 GB of RAM, and no secrets. The checkout contained 1,329 files, about 352,680 lines of source, and used 37.7 MB before installation.

The test command failed after 436 seconds. Go reported 88 passed packages and 5 failed packages out of 93. The final log lines showed successful results for internal packages including mountinfo, pubsub, rest, ringbuffer, several S3 Select packages, and store, followed by FAIL. That tail does not identify why the five packages failed, so blaming missing system libraries, resource limits, or the code would be guesswork.

Those results split the setup story in two. Compilation worked in our clean container, which is useful evidence for anyone who must rebuild the server. The complete test step did not pass, and the supplied log tail gives no diagnosis. Before trusting a private build, an operator would need the full failure output, a repeatable build image, and a policy for deciding which failures can block a release.

A local start is short, but safe operation is your job

The basic command is approachable: point minio server at an empty writable directory, connect on port 9000, and use the browser or an S3 client. The documented example starts with minioadmin:minioadmin. Those credentials are convenient for a loopback trial and unacceptable on any reachable server. A real deployment needs changed secrets, TLS, durable volumes, backups, monitoring, and a tested recovery procedure.

Building the container also has an extra step. The README says the minio binary must already exist in the repository root before docker build runs. Kubernetes users are sent toward the MinIO Operator or community Helm chart. None of these routes restores upstream maintenance to the server code. Packaging can make deployment repeatable; it cannot supply security fixes that no maintainer is publishing here.

The last push was April 24, 2026, then the tracker stopped

GitHub recorded the final push on April 24, 2026. The repository currently has 80 combined open issues and pull requests: search results split that into 44 issues and 36 pull requests. The newest open pull requests are dependency updates from April 24. Issue activity ended around the archive event, with many issues closed on April 25 and remaining reports left open. That pattern matches the README's maintenance warning.

The latest GitHub release is RELEASE.2025-10-15T17-29-55Z, published October 16, 2025 for a session-policy privilege escalation fix. The release instructed users to upgrade by compiling the tag or building a container from source. It is valuable history for operators checking old installations, but a 2025 security release does not promise another fix after the 2026 archive.

Existing users need an exit plan, not another quick start

An installed MinIO cluster may still serve data correctly today. Replacing storage is also risky work, so an immediate panic migration would be poor advice. Inventory the deployed version, exposure, replication, identity setup, clients, and recovery tests first. Then choose whether your organization will maintain a fork, buy a supported MinIO offering, or migrate to another object store. Put dates and owners on that decision.

For a new system, the choice is easier. Ceph covers object, block, and file storage but asks much more of its operators. SeaweedFS provides an S3 gateway alongside file-oriented access. Garage aims at smaller self-hosted clusters. Each still requires its own proof run. What they offer that this MinIO repository no longer does is an upstream where a new defect can plausibly receive a new patch.

Alternatives

ProjectWhat it isPick it when
CephA distributed storage system that provides object, block, and file interfaces.pick this instead when you need an actively developed storage platform and can operate a larger cluster.
SeaweedFS gh↗A distributed storage system with an S3 gateway and a simpler volume-server design.pick this instead when active open-source development and mixed file and object access matter.
GarageA lightweight distributed object store designed for self-hosting across modest machines.pick this instead when you want an actively maintained S3-compatible system for smaller infrastructure.

What people are saying

  1. [hackernews] Alternatives to MinIO for single-node local S3
  2. [github-trending] minio/minio

Sources

  1. MinIO repository and maintenance notice
  2. MinIO security release RELEASE.2025-10-15T17-29-55Z
  3. Open issue 21727: If-None-Match incorrect behaviour
  4. MinIO license compliance guidance

More data reviews

jq · pgx · HowToLiveLonger · ip2region · dbdelve · litestream · the whole board →