minio
MinIO is a high-performance, S3 compatible object store, open sourced under GNU AGPLv3 license.
Amazon S3と互換性のある、自社サーバーで運用できる高性能なオブジェクトストレージ(大容量データ保存システム)です。
・企業:AI・機械学習やデータ分析の大量データを自社環境で管理でき、S3対応の既存ツールやアプリケーションをそのまま使い続けられます。 ・スタートアップ:クラウドのストレージ費用を抑えつつ、S3互換のAPIでアプリケーション開発を進められるため、将来のクラウド移行もスムーズです。 ・個人事業主・フリーランス:自宅サーバーに写真やバックアップデータを大量に保管でき、S3対応のバックアップツールと組み合わせて自動化できます。
Amazon S3やGoogle Cloud Storageは従量課金でデータ量が増えるほど費用がかさみますが、MinIOは自社のサーバーで無料運用でき、S3と同じ操作方法でデータを外部に預けずに管理できます。
[!注意] このリポジトリはメンテナンスされていません。
代替案:
- AIStor Free - 全機能を備えたコミュニティ用のスタンドアロン版 (無償ライセンス) > - AIStor Enterprise - 分散版。
- AIStor Enterprise - 商用サポート付きの分散版。
MinIO クイックスタートガイド
MinIOは、GNU AGPL v3.0ライセンスの下でリリースされた、高性能なS3互換オブジェクトストレージソリューションである。 スピードとスケーラビリティのために設計され、業界をリードするパフォーマンスでAI/ML、アナリティクス、データ集約型ワークロードを強化します。
- S3 API互換 - 既存のS3ツールとのシームレスな統合。
- AIとアナリティクス向けに構築 - 大規模なデータパイプライン向けに最適化されています。
- ハイパフォーマンス - 要求の厳しいストレージワークロードに最適です。
このREADMEでは、MinIOをソースからビルドし、ベアメタルハードウェアにデプロイする手順を説明します。 ドキュメントのローカルコピーをビルドしてホストするには、MinIO Documentation プロジェクトを使用してください。
MinIOはオープンソースソフトウェアです。
MinIOは、オープンソースソフトウェアコミュニティのためのオープンソースソフトウェアとして設計されました。AGPLv3ライセンスのもと、MinIOをリミックス、再設計、再共有することをコミュニティに推奨しています。
あなたのアプリケーションスタックでMinIOを使用するには、AGPLv3の義務に対する検証が必要であり、これには、あなたが恩恵を受けたコミュニティへの修正コードのリリースが含まれますが、これに限定されません。リパッケージやサービス/機能の再販を含む、AGPLv3ソフトウェアの商用/プロプライエタリな使用は、すべて自己責任で行ってください。
AGPLv3は、オリジナルあるいは改変された作品をサポート、保守、保証する義務をいかなる当事者にも負いません。 すべてのサポートは、GithubとわたしたちのSlackチャンネルを通じて、ベストエフォートで提供されます。コミュニティのメンバーであれば誰でも、このソフトウェアの使い方について貢献し、他の人を支援することを歓迎します。
MinIO AIStor には、商用またはプロプライエタリな使用を必要とするワークロードのためのエンタープライズグレードのサポートとライセンス、およびプロダクションレベルのSLA/SLOに裏打ちされたサポートが含まれています。詳細については、お見積もりはこちら.
ソース・オンリー・ディストリビューション
重要: MinIOコミュニティ・エディションはソースコードのみの配布となります。コミュニティ版ではコンパイル済みのバイナリ・リリースは提供されません。
最新のMinIOコミュニティ版のインストール
MinIOコミュニティエディションを使用するには、2つのオプションがあります:
1.**go install github.com/minio/minio@latest` (推奨) を使用してソースからインストールする。 2.**提供されたDockerfileからDockerイメージをビルドする。
それぞれの方法の詳細については、以下のセクションを参照してください。
レガシー・バイナリーリリース
歴史的なコンパイル済みバイナリ・リリースは、参照用として利用可能ですが、現在は保守されていません:
- GitHub リリース: https://github.com/minio/minio/releases
- 直接ダウンロード: https://dl.min.io/server/minio/release/
これらのレガシー・バイナリはアップデートを受けません。 最新の機能、バグ修正、セキュリティ・アップデートにアクセスするためには、ソース・ビルドを使用することを強くお勧めします。
ソースからのインストール
以下のコマンドを使用して、ソースからスタンドアロンのMinIOサーバーをコンパイルして実行します。 Golang環境がない場合は、Golangのインストール方法 に従ってください。最低限必要なバージョンは、go1.24 です。
go install github.com/minio/minio@latest
別の方法として、go build を実行し、環境変数 GOOS と GOARCH を使ってOSとアーキテクチャのターゲットを制御することもできる。
例えば
env GOOS=linux GOARCH=arm64 go build
minio server PATH を実行して MinIO を起動する。PATH` はローカルファイルシステム上の任意の空のフォルダである。
MinIO のデプロイは、デフォルトの root 認証情報 minioadmin:minioadmin を使用して開始する。
MinIO Console(MinIOサーバーに組み込まれたWebベースのオブジェクトブラウザー)を使用して、デプロイメントをテストできます。
ホストマシン上で実行されているWebブラウザをhttp://127.0.0.1:9000に向け、ルート認証情報でログインする。
ブラウザを使用して、バケットを作成したり、オブジェクトをアップロードしたり、MinIOサーバーのコンテンツを参照したりできます。
MinIO Client mcコマンドラインツールなどのS3互換ツールを使用して接続することもできる:
以下のようにする。 mc alias set local http://localhost:9000 minioadmin minioadmin mc admin info local
mc`コマンドラインツールの詳細については、[Test using MinIO Client `mc`](#test-using-minio-client-mc) を参照してください。
アプリケーション開発者の方は、<https://docs.min.io/enterprise/aistor-object-store/developers/sdk/> を参照して、サポートされている言語のMinIO SDKをご覧ください。
> 注意]。
> ソースからコンパイルしたMinIOバイナリを使用する本番環境は、自己責任で行ってください。
> AGPLv3ライセンスは、そのような使用に対していかなる保証も責任も負いません。
## Dockerイメージのビルド
ローカルホストマシンでDockerイメージをビルドするには、`docker build .` コマンドを使用します。
最初に[MinIOをビルド](#install-from-source)し、`minio`のバイナリがプロジェクトルートに存在することを確認する必要があります。
次のコマンドは、プロジェクトのルートディレクトリにあるデフォルトの `Dockerfile` を使って、リポジトリとイメージタグ `myminio:minio` でDockerイメージをビルドします。
sh
docker build -t myminio:minio .
docker image ls` を使って、ローカルリポジトリにイメージが存在することを確認する。 標準的なDocker呼び出しを使ってサーバーを実行できる:
sh docker run -p 9000:9000 -p 9001:9001 myminio:minio server /tmp/minio --console-address :9001
Dockerコンテナの構築、カスタムイメージの管理、オーケストレーションプラットフォームへのイメージのロードに関する完全なドキュメントは、このドキュメントの範囲外です。
Dockerfile`と`dockerscripts/docker-entrypoint.sh`は必要に応じて変更してください。
コンテナイメージ内でMinIOを実行するための詳細なガイダンスについては、[MinIO Container](https://docs.min.io/community/minio-object-store/operations/deployments/baremetal-deploy-minio-as-a-container.html#deploy-minio-container) ドキュメントを参照してください。
## Helm Chartsを使用してインストールする
KubernetesインフラストラクチャにMinIOをインストールするには、2つのパスがあります:
- MinIO Operator](https://github.com/minio/operator)を使用する。
- コミュニティがメンテナンスする[Helm charts](https://github.com/minio/minio/tree/master/helm/minio)を使用する。
Operatorを使用したデプロイのガイダンスについては、[MinIOドキュメント](https://docs.min.io/community/minio-object-store/operations/deployments/kubernetes.html)を参照してください。
コミュニティHelmチャートには、フォルダレベルのREADMEに説明があります。
## MinIOの接続性をテストする
### MinIO コンソールを使用したテスト
MinIO Serverには、Webベースのオブジェクトブラウザが組み込まれています。
ウェブブラウザで<http://127.0.0.1:9000>にアクセスし、サーバーが正常に起動したことを確認します。
> 注意]。
> 特定のポートを選択したい場合は、--console-address`を使用して、特定のインターフェースとポートを選択してください。
### MinIO クライアント `mc` を使用してテストする。
mc` は ls, cat, cp, mirror, diff などの UNIX コマンドに代わるモダンなコマンドを提供する。ファイルシステムやAmazon S3互換のクラウドストレージサービスをサポートしている。
以下のコマンドは、ローカルエイリアスを設定し、サーバー情報を検証し、バケットを作成し、そのバケットにデータをコピーし、バケットの内容を一覧表示する。
```sh
mc alias set local http://localhost:9000 minioadmin minioadmin
mc 管理者情報
mc mb データ
mc cp ~/Downloads/mydata data/
mc ls data/
詳細については、MinIO Client Quickstart Guideに従ってください。
さらに調べる
- MinIOドキュメントのウェブサイト](https://docs.min.io/community/minio-object-store/index.html)
- MinIO消去コードの概要](https://docs.min.io/community/minio-object-store/operations/concepts/erasure-coding.html)
- MinIO Serverで
mcを使用する](https://docs.min.io/community/minio-object-store/reference/minio-mc.html) - MinIO サーバーで
minio-goSDK を使用する](https://docs.min.io/enterprise/aistor-object-store/developers/sdk/go/)
MinIO プロジェクトへの貢献
MinIO コントリビューターガイド に従って、リポジトリに新しいコントリビューターを作成してください。
ライセンス
- MinIOのソースコードはGNU AGPLv3に基づいてライセンスされています。
- MinIOのドキュメントは、CC BY 4.0の下でライセンスされています。
- ライセンスの遵守](https://github.com/minio/minio/blob/master/COMPLIANCE.md)