カテゴリ: FlutterのWeb・デスクトップ対応 更新日: 2025/12/19

FlutterのWebアプリをデプロイする方法まとめ!Firebase Hostingでの公開手順も解説

301
FlutterのWebアプリをデプロイする方法まとめ(Firebase Hostingなど)

先生と生徒の会話形式で理解しよう

生徒

「FlutterでWebアプリを作ったんですが、インターネットに公開するにはどうすればいいですか?」

先生

「それならWebアプリをビルドしたあとに、Firebase Hostingなどのサービスを使ってデプロイする方法がありますよ。」

生徒

「Firebase Hostingって簡単に使えるんですか?初心者でも設定できますか?」

先生

「はい、Flutter Webの公開にぴったりなサービスです。Firebase Hostingの他にもいくつか方法があるので、まとめて解説していきますね。」

1. Flutter Webアプリのデプロイとは?

1. Flutter Webアプリのデプロイとは?
1. Flutter Webアプリのデプロイとは?

Flutterで作ったWebアプリをインターネット上に公開することを「デプロイ(deploy)」と呼びます。作成したアプリを誰でもアクセスできるようにするには、まずFlutterでWeb向けにビルドしたあと、ホスティングサービスにアップロードする必要があります。

Flutter Webのデプロイ方法としては、以下のような選択肢があります:

  • Firebase Hosting(公式にも紹介されている定番)
  • GitHub Pages
  • Netlify
  • Vercel
  • 自前のWebサーバーやVPS

この記事では、特に初心者でも使いやすいFirebase Hostingを中心に、Flutter Webのデプロイ方法を解説していきます。

2. Flutter Webアプリのビルドを行う

2. Flutter Webアプリのビルドを行う
2. Flutter Webアプリのビルドを行う

まずFlutterで作成したWebアプリをbuild/webというフォルダにビルドします。これによって、ブラウザ上で動作するHTML・JavaScript形式のファイルが生成されます。


flutter build web

このコマンドを実行するだけで、Web公開に必要なファイルが一式準備されます。

3. Firebase Hostingでのデプロイ手順

3. Firebase Hostingでのデプロイ手順
3. Firebase Hostingでのデプロイ手順

Firebase Hostingを使えば、Flutter Webアプリを無料で簡単に公開できます。以下の手順で行います。

ステップ1:Firebase CLIのインストール

Node.jsがインストールされた環境で、以下のコマンドを実行します。


npm install -g firebase-tools

ステップ2:Firebaseプロジェクトへのログイン


firebase login

Googleアカウントでログインします。

ステップ3:Firebaseプロジェクトの初期化


firebase init

いくつかの選択肢が出てくるので、次のように選択します:

  • Hosting: Configure files for Firebase Hosting and (optionally) set up GitHub Action
  • プロジェクトの選択:既存のFirebaseプロジェクトを選択(なければコンソールから作成)
  • publicディレクトリにbuild/webを指定
  • シングルページアプリケーションかどうか:Yes

ステップ4:Flutter Webアプリをデプロイ


firebase deploy

これで、Firebase Hosting上にFlutterのWebアプリが公開されます。デプロイ後に表示されるURLにアクセスすると、誰でもWebアプリを使うことができます。

4. GitHub PagesでFlutter Webアプリを公開する

4. GitHub PagesでFlutter Webアプリを公開する
4. GitHub PagesでFlutter Webアプリを公開する

Firebase以外の選択肢として、GitHub PagesでもFlutter Webアプリを公開可能です。

  • GitHubリポジトリを作成
  • build/webの内容をそのリポジトリのgh-pagesブランチにpush
  • GitHubの設定でPages公開設定を行う

ビルド結果をgh-pagesブランチに配置するためのnpmツールやCI/CDを使うと、デプロイが自動化できます。

5. NetlifyやVercelを使ったFlutter Webの公開

5. NetlifyやVercelを使ったFlutter Webの公開
5. NetlifyやVercelを使ったFlutter Webの公開

NetlifyVercelといったホスティングサービスもFlutter Webに対応しており、GitHubとの連携で自動デプロイが可能です。

主な手順は次の通りです:

  • GitHubにFlutterアプリをPush
  • NetlifyやVercelのアカウントを作成してGitHubと連携
  • ビルドコマンドにflutter build webを設定
  • 公開ディレクトリにbuild/webを指定

これだけでビルドから公開まで自動で行ってくれるため、継続的デプロイ(CI/CD)にも最適です。

6. デプロイ時の注意点・トラブル対策

6. デプロイ時の注意点・トラブル対策
6. デプロイ時の注意点・トラブル対策

Flutter Webアプリをデプロイする際、以下のような注意点があります。

  • ルーティングがうまく動かない:Firebase Hostingでは404.htmlを使うより、リライト設定が必要です。
  • キャッシュ問題:更新内容が反映されないときは、ブラウザのキャッシュ削除やキャッシュバスティングが必要。
  • 画像・アセットが表示されないpubspec.yamlにアセットの指定がされているか確認しましょう。

特にSPA(シングルページアプリケーション)としての挙動を意識したホスティング設定が重要です。

FlutterのWeb・デスクトップ対応の一覧へ
新着記事
IAM Identity Centerの許可セットとポリシーの関係を解説
IAM Identity Centerの許可セットとポリシーの関係を初心者向けにわかりやすく解説!
Java の正規表現で「数字」や「英字」だけをチェックする方法
Javaの正規表現で「数字」や「英字」だけをチェックする方法を初心者向けに完全解説
Java で正規表現を使う方法(Pattern クラスと Matcher クラス)
Javaで正規表現を使う方法を完全解説!PatternクラスとMatcherクラスを初心者向けにやさしく説明
FlutterでQRコードの生成・読み取りをする方法
FlutterでQRコードの生成・読み取りを実装する方法!初心者でもできるQRアプリ開発
人気記事
インスタンスタイプの料金比較と最適な選び方(最新2025年版)
AWSのインスタンスタイプの料金比較と最適な選び方【2025年最新版】
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説