メインコンテンツへ移動
AnyStorage
無料ダウンロード

MinIO クライアント

macOS・Windows・Linux 対応の MinIO クライアント GUI

MinIO のデスクトップ GUI クライアント。ポート 9000 のエンドポイントに path-style で接続し、bucket を閲覧し、署名付きリンクを発行し、バケットをドライブとしてマウントできます。

自己ホストの MinIO 向けデスクトップ GUI(macOS・Windows・Linux)。ポート、path-style、リージョン、TLS の要点は 2026 年 9 月に MinIO 公式ドキュメントで確認しています。

MinIO GUI クライアント、MinIO クライアント、MinIO GUI Windows

MinIO 自身の答えは Web コンソールとコマンドライン

MinIO は自分で管理するハードウェアの上に S3 のセマンティクスを用意してくれます。だから CI の成果物、バックアップ、データセット、外に出せないものが集まります。付属するツールはブラウザのコンソールと、コマンドラインの mc。どちらも良いものですが、どちらも「他のストレージと並べて使えるデスクトップのファイルマネージャー」ではありません。

AnyStorage が埋めるのはそこです。MinIO のエンドポイントを指定すれば、macOS・Windows・Linux で bucket がフォルダとして開き、アップロード、ダウンロード、リネーム、削除、署名付きリンクが他の接続と同じウィンドウに並びます。

以下の事実は 2026 年 9 月に MinIO のドキュメントで確認したものです。ドキュメント自体がよく動くので 1 つだけ補足すると、現在は docs.min.io に AIStor のブランドで置かれ、オープンソース版のページは community/minio-object-store 以下にあります。

ポートと、もう一つのポート

MinIO のサーバーリファレンスには、--address を省略した場合 "binds to port 9000 on all configured IPv4 addresses, IPv6 addresses, and hostnames on the host machine" と書かれています。つまり誰かが変更していなければ、S3 API のエンドポイントは http://HOST:9000 です。

間違えやすいのはコンソール側です。ドキュメントによれば MinIO は "by default, selects a random port for the Console UI on each server startup"、明示するには --console-address か MINIO_CONSOLE_ADDRESS を使います。そして掲載されている例が ./minio server /mnt/data --console-address ":9001"。9001 という数字が広まったのはこの例が理由で、既定値ではなく慣習です。クライアントが向くのは 9000、9001 はブラウザ UI で S3 のリクエストには答えません。

4 つの項目と、決定的な 1 つのスイッチ

mc のエイリアスとデスクトップの接続は、同じ情報を持ちます。MinIO はエイリアスを "the name to associate to the S3-compatible service" と説明し、mc alias set ALIAS URL ACCESSKEY SECRETKEY で作ります。シークレットキーは最低 8 文字、--api の既定は S3v4(署名 V2 は "considered deprecated by AWS")です。

sh

# mc がエイリアスとして保持する情報
mc alias set myminio http://192.168.1.10:9000 minioadmin minioadmin

# AnyStorage 側も同じ 4 つ。接続を追加して
# S3 互換を選び、次を入力する
#   エンドポイント  http://192.168.1.10:9000
#   アクセスキー    minioadmin
#   シークレットキー minioadmin
#   path-style      オン

path-style は任意ではありません。 コア設定のドキュメントは MINIO_DOMAIN についてはっきり書いています。この設定は "enables Virtual Host-style requests to the MinIO AIStor deployment"、そして "omitting this setting directs MinIO AIStor to only accept the default path-style requests"。管理者がドメインを設定していない限り bucket.host/key は拒否され、通るのは host/bucket/key だけです。Amazon S3 では正しい仮想ホスト形式を既定にしているクライアントは、素の MinIO に対して名前解決エラーや署名エラーを返します。どちらのメッセージも「path-style を有効にしろ」とは言ってくれません。両方を受け付ける Cloudflare R2 とは対照的です。

リージョンは「合わせる」ものです。 MinIO は MINIO_SITE_REGION を文書化していて(例は mc admin config set ALIAS site region="us-east-1")、用途はサイトレプリケーションの設定と説明されています。万能の既定値は公開されていません。リージョンは SigV4 の資格情報スコープに含まれるため、サーバー側と食い違うと「リージョンが違う」ではなく署名エラーとして現れます。空欄か us-east-1 にしておき、運用側が指定しているなら同じ文字列をそのまま入れてください。続きは MinIO の SignatureDoesNotMatch にまとめています。

TLS と、自己署名証明書の代償

MinIO は既定で $HOME/.minio/certs から PEM 形式の public.crt と private.key を読み、--certs-dir で場所を変えられます。ドキュメントは "self-signed, internal or private certificate authorities (CAs), [and] third-party CAs" に対応すると書いています。信頼はディレクトリで表現され、CA ファイルは CAs/ サブディレクトリに置きます("MinIO AIStor reads all top-level files in the CAs/ directory and adds valid X.509 PEM certificates to the trusted root CA pool")。

クライアント側に出るエラー文字列は覚えておく価値があります。MinIO の TLS トラブルシューティングページが列挙しているのは x509: certificate signed by unknown authority、x509: certificate has expired or is not yet valid、x509: certificate is valid for X, not Y、tls: bad certificate です。

mc の逃げ道は文書化されていて、同時に推奨されていません。--insecure あるいは MC_INSECURE=true は "disable SSL certificate verification"、つまりテスト用です。MinIO が勧める恒久策は、自己署名を配り続けるのではなく CA からノード証明書を発行し、その CA を CAs/ に置くこと。デスクトップクライアントでも同じ話が一段上で成り立ちます。その CA をマシンのトラストストアに取り込めば、デスクトップアプリはそこを見るので、https:// のエンドポイントがまとめて通るようになります。

バージョニング、オブジェクトロック、暗号化をクライアント側から見る

いずれもサーバー側の設定ですが、GUI の見え方を変えます。

  • バージョニングは bucket 単位で、後から停止(suspend)もできます。バージョン ID を指定しない DELETE は "creates a 0-byte DeleteMarker as the latest version of that object"、つまり一覧から消えても容量は残ります。完全に消すにはバージョン ID を指定します。
  • オブジェクトロックにはバージョニングが前提です("bucket versioning is a prerequisite for configuring object locking and retention rules")。ドキュメントは "must enable object locking during bucket creation as per S3 behavior" と書いていますが、最近の例外が 1 つあります。リリース RELEASE.2025-05-20T20-30-00Z 以降は mc retention set --default で既存 bucket にも既定の保持ルールを設定できます。
  • 保持モードは「誰が勝てるか」を決めます。GOVERNANCE は s3:BypassGovernanceRetention を持つユーザーだけがロックされたオブジェクトを変更でき、COMPLIANCE は root を含むすべてのユーザーが期間満了まで変更できません。リーガルホールドは無期限で、保持ルールとは独立です。
  • 暗号化は SSE-KMS と SSE-S3 が外部キーマネージャーを必要とし、SSE-C は "requires a TLS/HTTPS-enabled deployment"(鍵をリクエストヘッダーで送るため)です。

実務的にはこう読めます。どのクライアントで削除してもバージョン一覧にオブジェクトが残るなら、それはバージョニングが正しく効いている状態です。削除そのものが失敗するなら、アプリを疑う前に保持ルールを確認してください。COMPLIANCE モードならどのクライアントでも覆せません。

MinIO 向けツールの比較

自己ホストの MinIO を扱う手段(2026 年 9 月確認)
ツールデスクトップ GUI複数サーバーを同時にドライブとしてマウントLinux価格
AnyStorageありあり(S3・R2・B2・WebDAV・SFTP も同時に)あり(ローカル WebDAV、ドライバ不要)あり(AppImage と .deb)無料プランと有料 Pro
MinIO Consoleなし(ブラウザ UI)なし(1 コンソール 1 デプロイ)なしブラウザのみサーバー同梱
mcなし(コマンドライン)あり(1 サーバー 1 エイリアス)なしあり無料・オープンソース
Cyberduckありあり(多プロトコル)なしなし無料・オープンソース
rcloneなし(コマンドライン)あり(多バックエンド)あり(FUSE または WinFsp が必要)あり無料・オープンソース

順位ではなくトレードオフとして読んでください。

  • コンソールはデプロイの管理(ユーザー、ポリシー、レプリケーション、保持設定)に向いた場所です。ただし 1 デプロイ 1 タブで、ポートはランダムなことがあります。
  • mc はスクリプト化できるものすべてで勝ちます。mc mirror、mc rm --recursive、cron、CI。GUI のエラーメッセージが上品すぎて役に立たないときに使う道具でもあります。
  • Cyberduck は S3 プロトコル経由で MinIO を扱える堅実な無料ブラウザで、マウントはできず Linux 版もありません。rclone は最も強力で最も手間がかかり、rclone mount には FUSE か WinFsp の導入と --vfs-cache-mode の判断が必要です。
  • AnyStorage はファイルマネージャーの層です。複数の MinIO サーバーをクラウドの bucket と並べて開き、必要ならドライバ不要のマウントを足せます。

macOS・Windows・Linux から接続する

0.2.25 は 2026 年 9 月 23 日公開で、対応環境は macOS 11 以降、Windows 10 以降、Ubuntu 20.04 以降。サーバーに到達できるマシンなら同じ接続がそのまま使えます。Mac なら brew install --cask kilerd/tap/anystorage。パッケージは macOS のページと Linux のページ、プロトコル全般は S3 クライアント(GUI)の概要にあります。認証情報は暗号化してローカルに保存され、アカウント登録は不要、無料プランは接続 2 つまでです。

MinIO の bucket をドライブとしてマウントする

パスしか受け取らないプログラムが相手のとき、AnyStorage は接続中のストレージ(MinIO を含む)を自分のマシンの http://127.0.0.1:3211 で動く WebDAV サーバーとして再提供します。FUSE も WinFsp も管理者権限も要りません。マウントは Finder の「サーバへ接続」、エクスプローラーの「ネットワークドライブの割り当て」、Nautilus や Dolphin の dav://127.0.0.1:3211 で行います。無料プランでは読み取り専用、Pro で読み書き。S3 での同じ手順はマウント手順のページにあります。

よくある質問

MinIO で SignatureDoesNotMatch が出るのはなぜですか?

よくある原因は 4 つ、可能性の高い順に:クライアントのリージョンがサーバー側と一致していない、MinIO が path-style しか受け付けないのに仮想ホスト形式で接続している、MinIO の前段のプロキシが Host ヘッダーやパスを書き換えている、そして本当にシークレットが違う。詳細は MinIO の SignatureDoesNotMatch へ。

MinIO はどのポートに接続すればいいですか?

S3 API は 9000 です(--address を省略したときに MinIO が bind するポート)。コンソールは別サービスで、運用側が --console-address ":9001" を渡していない限りポートはランダムであり、S3 のリクエストには応答しません。

MinIO で path-style は必要ですか?

管理者が MINIO_DOMAIN を設定していない限り必要です。設定がなければ MinIO は "only accept[s] the default path-style requests" なので、仮想ホスト形式の bucket URL を使うクライアントは名前解決エラーや署名エラーで失敗します。

MinIO サーバーが自己署名証明書です。どうすればいいですか?

発行元の CA をマシンのトラストストアに取り込み、https:// を使い続けてください。デスクトップクライアントが見るのはそこです。MinIO 自身も、自己署名を配り続けるのではなく CA からノード証明書を発行してサーバーの CAs/ に置くことを勧めています。mc --insecure はテスト用です。兆候は x509: certificate signed by unknown authority。

MinIO の bucket をドライブにできますか?

できます。ローカルの WebDAV サーバーを起動し、OS 標準の WebDAV クライアントで http://127.0.0.1:3211 をマウントすれば、bucket がフォルダとして現れます。無料プランでは読み取り専用、Pro で読み書き、どちらの場合もカーネルドライバは不要です。