S3互換のMinIOを触ってみた
MinIO とは
MinIO は、高性能で S3 互換のオブジェクトストレージを提供します。 Kubernetes にネイティブな MinIO は、以下のような環境で利用できる唯一のオブジェクトストレージスイートです。 すべてのパブリッククラウド、すべての Kubernetes ディストリビューション、プライベートクラウド、そして エッジになります。MinIO はソフトウェア定義型であり、GNU AGPL v3 のもと 100%オープンソースで提供されます。
MinIO は AWS の S3 と互換性のあるストレージになる。 Minio と表記されている記事をよく見たけど、公式サイトには MinIO と書いてあった。
Docker で動かす
MinIO を docker-compose で動かす。
ports を9000
と9001
で分けているが、1 つにまとめようとするとうまくうごかなかったので、このまま分けておいたほうが良さそう。
docker-compose.yml は次のような形。
minio: image: "minio/minio" container_name: minio environment: MINIO_ROOT_USER: minio MINIO_ROOT_PASSWORD: miniominiominio command: server /export --address :9000 --console-address :9001 volumes: - ./minio/data:/export ports: - "9000:9000" - "9001:9001"
docker-compose up
で起動すると、http://127.0.0.1:9001/login
でアクセスができる。
ユーザ名とパスワードは docker-compose.yml で設定したので、ログインする。
- ユーザ名
- minio
- パスワード
- miniominiominio
Bucket 作成
画面上から Bucket を作成してみる。
Bucket Name に system-a
と入力し、Create Bucket をクリックする。
無事に作成できたことが確認できる。
ファイル配置
Upload ボタンをクリックするとファイルをアップロードできる。 これはアップロード後の画面になる。
左のタブの Buckets をクリックすると Bucket の一覧と先ほど作成したsystem-a
Buclet が見える。
ファイルを置いたことにより、Usage と Objects にも現在の数値が反映されている。
ディレクトリにもファイルが配置されていることがわかる。
まとめ
ローカルで S3 と同等のことができる MinIO を触ってみた。 ローカル環境で開発するときに S3 を用意する必要もないし、Docker で実行することも確かめられたので CI 環境でも利用できそう!