ChunTechBlog
ChunTech Blog

technology
Welcome to ChunTechBlog

Supabase Storageで画像やファイルを管理する方法

2025/9/23
Webサイト
Supabase Storageで画像やファイルを管理する方法

Webアプリを作るとき、ユーザーのプロフィール画像や商品写真、PDFなどを保存する仕組みは欠かせません。
そんなときに便利なのが SupabaseのStorage機能 です。クラウド上に安全にファイルを保存し、アプリから取得・表示することができます。

Supabase Storageの特徴

  • 任意のファイル形式に対応
    画像、動画、PDF、ドキュメントなど幅広く保存可能です。
  • バケット単位での管理
    S3のように「バケット」を作り、その中でファイルを整理できます。
  • 認証ルールとの連携
    Supabaseの認証(Auth)と組み合わせることで、ログインユーザーだけがアクセスできるルールを設定可能です。
  • CDNによる高速配信
    公開設定をすれば、外部からでもCDN経由でスピーディにアクセスできます。

基本的な使い方

  1. バケットを作成
    Supabaseコンソールにログインし、「Storage」タブから新しいバケットを作成します。
    例:「avatars」という名前でプロフィール画像用のバケットを作成。
  2. ファイルをアップロード
    アプリからファイルをアップロードするには、JavaScript SDKを使います。
    // バケットにファイルをアップロード
    const { data, error } = await supabase.storage
      .from("avatars")
      .upload("user1/profile.png", file);
    
  3. 公開URLを取得
    公開用のURLを取得して、フロントエンドで表示することができます。
    const { publicUrl } = supabase.storage
      .from("avatars")
      .getPublicUrl("user1/profile.png");
    

応用例

  • ユーザーごとのプロフィール画像を保存
  • ECサイトの商品画像を管理
  • PDFやマニュアルのダウンロードリンクを配布
  • ブログ記事のアイキャッチ画像を保存

まとめ

Supabase Storageは、S3やFirebase Storageのようなクラウドストレージを、より簡単に導入できる機能 です。
特に、認証機能(Auth)と組み合わせることで「ユーザーごとの専用フォルダ」を作り、安全にファイルを管理できます。

「認証(Auth)」に続き、今回の「Storage」も、Supabaseの強力な武器のひとつ。
これらを組み合わせることで、本格的なWebアプリを素早く構築できるようになります。

この記事をシェア

著者について

C

ChunTechBlog

開発記録を残すブログとして運営しています。最新のテクノロジーと開発ノウハウをモノクロトーンでお届けします。