約5分

MinIOにファイルをアップロードしてリンクで共有する方法

MinIOを使えば、自分のサーバーでS3互換ストレージを運用できます。AktarのMinIOプリセットはパス形式のアドレス指定(https://server/bucket/file)を使います。これはほとんどのセルフホスト環境で想定されている形式です。

必要なもの

  • Macから接続できるMinIOサーバー(HTTPS推奨)
  • MinIO Client(mc)、またはMinIO Consoleへのアクセス
  • MacにインストールしたAktar

設定手順

  1. 1

    バケットを作成する

    サーバーのエイリアスを設定したMinIO Clientで、次のコマンドを実行します。

    mc mb myminio/screenshots
  2. 2

    匿名ダウンロードを許可する

    共有したリンクを誰でも開けるように、バケットに公開読み取りのポリシーを設定します。

    mc anonymous set download myminio/screenshots
  3. 3

    アクセスキーを作成する

    MinIO Consoleでアクセスキー(またはバケットへの読み書き権限を持つ専用ユーザー)を作成し、Access KeyとSecret Keyをコピーします。

  4. 4

    Aktarにアップロード先を追加する

    設定 → アップロード先 → アップロード先を追加でMinIOを選び、下の値を入力します。MinIOはパス形式のURLを使うため、公開ベースURLにはバケット名が含まれます。

  5. 5

    テストして保存する

    「接続をテスト」をクリックしてから、「保存」をクリックします。

Aktarでの設定

「設定 → アップロード先 → アップロード先を追加」で、次の値を入力します。項目名はアプリの表示と同じです。

項目入力例
プロバイダMinIO
エンドポイントhttps://minio.example.comMinIOのAPIアドレス(多くの場合ポート9000)。
リージョンus-east-1サーバーに設定したリージョン。設定していなければus-east-1。
アクセスキーIDaktar
シークレットアクセスキー••••••••
バケットscreenshots
公開ベースURLhttps://minio.example.com/screenshotsバケット名を含みます。

ヒント

  • MinIOはHTTPS対応のリバースプロキシの背後に置きましょう。どのブラウザやチャットアプリでもリンクが正しく開けるようになります。
  • アップロードにはMacからサーバーに接続できれば十分です(VPNやLANでも可)。ただし共有リンクは、開く人から公開URLにアクセスできる必要があります。

トラブルシューティング

「接続をテスト」でリージョンや署名のエラーが出る

リージョンにはMinIOサーバーで設定したリージョンを入力してください。設定していない場合はus-east-1を使います。

リンクが403を返す

バケットに匿名読み取りのポリシーがないか、公開ベースURLにバケット名が含まれていません。Access Deniedエラーをご覧ください。

まだ解決しませんか?よくある質問を見るか、GitHubで質問してください。