システム開発

Nuxt.jsで作成したWebサイトをFirebaseでホスティングする

Nuxt.jsはモダンなWebアプリケーションを開発するための、 Vue.jsベースのフレームワークです。

そんなNuxt.jsですがWebアプリケーションはもちろん、静的なWebサイトを作成することも可能。

Nuxt.jsなら、フロントエンドに必要な骨組みが揃っており開発が高速化できるといったメリットがあります。

この記事ではNuxt.jsのサンプルアプリを静的ファイルに出力し、それをFirebase Hostingにホスティングするための手順を解説していきます。

  • Webサイト制作を行いたい方
  • 社内のIT人材が不足している方
  • 効率よく開発業務を行いたい方

これらに当てはまる方におすすめの記事となっています。これを読めばWebサイト構築を効率化することができますよ。

Nuxtアプリを作成

まずは下記コマンドでNuxt.jsのアプリを作成します。

yarn create nuxt-app nuxt-app-firebase 

各フレームワークやLinterは必要になった時に自分で選んで入れたいので、
基本的にはNoneを選びます。

package managerはYarn、rendering modelはSSRを選択します。

開発用サーバーを起動して動作確認

アプリが作成できたら下記コマンドで開発用のサーバーを立ち上げます。

cd nuxt-app-firebase
yarn run dev 

以下のような画面が表示されればOKです。

静的ファイルの出力先のディレクトリを変更

Nuxt.jsの静的ファイル出力はデフォルトでdistディレクトリになっています。

Firebaseはpublicディレクトリがホスティングされるので、
nuxt.config.jsを以下のように修正して出力先を変更します。

build: { 
  ... 
}, 
generate: { 
  dir: 'public' 
} 

Vueファイルから静的ファイルを出力

ディレクトリが変更できたら下記コマンドで静的ファイルを出力します。

 yarn run generate

publicフォルダに以下のファイルが出力されていればOKです。

200.html 
README.md 
_nuxt/ 
favicon.ico 
index.html 

Firebaseプロジェクトを作成

次にホスティング先のFirebaseの設定を進めていきます。
まずはFirebaseのサイトでプロジェクトを作成します。

今回は本運用はしないのでGoogle Analyticsは無効にします。

Firebase CLIをインストール

次にFirebaseをコンソールから操作するためのツールを下記コマンドでインストールします。

npm install -g firebase-tools

Firebaseにログイン

インストールが完了したら下記コマンドでFirebaseにログインします。

firebase login

認証画面が自動で立ち上がるのでログインします。
ログインが完了すると以下のような画面が表示されます。

Firebaseの初期化

次に下記コマンドでFirebaseの初期化を行います。

firebase init

今回はWebサイトのホスティングに利用するのでHostingを選択します。
選択はエンターではなくスペースキーなので注意してください。

先ほど作成したプロジェクトを使いたいのでexisting projectを選択します。

先ほど作成したプロジェクトを選択します。

publicフォルダはそのままでOKです。

今回はSSRモードにしているためNoを選択します。

Nuxt.jsで出力したindex.htmlと重複するためNoを選択します。

Firebaseに静的ファイルをデプロイ

初期化が完了したら下記コマンドでFirebaseにデプロイします。

firebase deploy

下記のような画面が表示されればOKです。

Firebase Hostingにホスティングされているか確認

先ほど表示されたHosting URLにアクセスします。
以下のような画面が表示されればOKです。

終わりに

これでNuxt.jsで作成したWebサイトをFirebaseでホスティングできるようになりました!


Nuxt.jsでWebサイトを作ることによって、開発が効率的にスピーディーに行えるようになります。

dehaでは、5年ほど前から、ベトナムオフショア開発を行っています。

ベトナムオフショアに興味がある方や、本日紹介したNuxt.jsのようなフレームワークでのWeb開発を行いたい方は、ぜひお気軽にお問い合わせください。

お問い合わせはこちらから

Mai Tran

Recent Posts

プロジェクト品質管理サービスとは?重要性とプロセスを解説

近年、システム開発・建設・製造・マーケティングなど、あらゆる分野でプロジェクトの複雑化が進んでいます。 市場の変化は速く、顧客の期待値も高まり続けるなか、企業に求められるのは「限られたコストと期間で、高い品質を確保した成果物を提供すること」です。 しかし実際には、品質のばらつき、手戻り、要件の理解不足、工程管理の不徹底などにより、多くのプロジェクトが計画どおりに進まず、結果的にコスト増や納期遅延という課題を抱えています。 こうした背景から注目されているのが プロジェクト品質管理サービス です。専門家による品質管理プロセスの整備・運用支援を通じて、プロジェクト全体の成功確率を高めるサービスとして、大企業から中小企業まで導入が広がっています。 この記事では、プロジェクト品質管理サービスの概要、必要性、導入メリット、サービス内容、実際の運用プロセスまでを詳しく解説します。 品質管理にお悩みの方 プロジェクト品質管理システムに興味がある方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事になっています。これを読めば、品質問題で悩んでいる組織やプロジェクトリーダーにとって、具体的な改善ヒントとなる内容がわかりますよ。 プロジェクト品質管理サービスとは? プロジェクト品質管理サービスとは、外部の専門チームやコンサルタントが、企業のプロジェクトにおける品質管理プロセスを整備し、品質向上やリスク低減を支援するサービスです。主に以下のような内容が提供されます。 品質基準・品質計画の策定 プロジェクト管理プロセスの構築・改善…

2 days ago

生成AIチャットボットは?従来のチャットボットの違い

近年、企業や教育機関、自治体を中心に「生成AIチャットボット」の導入が一気に広がっています。 ChatGPTをはじめとする大規模言語モデル(LLM)が急速に発展したことで、これまでのチャットボットでは実現できなかった高度な対話や柔軟な問題解決が可能になりました。 しかし、「生成AIチャットボット」と「従来型のチャットボット」は何が違うのか、具体的に説明できる人は意外と多くありません。 本記事では、両者の仕組みや特性、メリット・デメリット、そして導入時のポイントまで分かりやすく解説しています。 生成AIに興味がある方 チャットボットを導入したい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めば生成AIチャットボットが、従来と比べてどう違うのかが丸わかりですよ。 チャットボットとは何か? チャットボットとは、ユーザーとの会話を自動で行うプログラムのことです。 ウェブサイトの問い合わせ窓口やアプリ内のサポート、コールセンターの一次対応など、さまざまな場所で活用されています。 従来のチャットボットは、多くの場合「ルールベース型」「FAQ型」「シナリオ型」と呼ばれる仕組みで動いていました。 これは、あらかじめ作成された回答やシナリオに沿って、決められたパターンの会話を実行する仕組みです。 一方、生成AIチャットボットは、文章を理解し、新たな文章を自動生成する能力を持つ「大規模言語モデル(LLM)」によって動作します。 これにより、従来型とはまったく異なる会話体験を提供できるようになりました。…

5 days ago

AI活用でコーディングが効率化し、開発のスピード3倍アップ

いま、ソフトウェア開発の現場で“静かな革命”が起きています。それは、AIがエンジニアの相棒としてコーディングを支援する時代の到来です。 「AIがコードを書くなんて、まだ先の話」と思われていたのはもう過去のこと。今ではAIが自然言語での指示を理解し、数秒でプログラムを提案・修正してくれるのが当たり前になりました。 その結果、開発スピードが従来の3倍に向上したという事例も続々と報告されています。 この記事では、AIがどのようにしてコーディングを効率化し、開発現場を変えているのかを具体的に解説します。 開発をしたい方 コーディングの効率を上げたい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めばコーディングにAIを活用する方法が丸わかりですよ。 コーディング現場の課題と限界 ソフトウェア開発の現場では、長年にわたって「納期の短縮」「品質の維持」「コスト削減」という三大課題がエンジニアを悩ませてきました。 近年では、ビジネス環境の変化がますます激しくなり、リリースサイクルの短期化が当たり前になっています。 特にWebサービスやモバイルアプリ開発の世界では、「スピードこそ競争力」と言われるほど、開発速度が事業の成否を左右します。 しかし、スピードを優先すれば品質が犠牲になり、品質を重視すれば納期が延びる――このジレンマに多くの開発チームが直面してきました。 加えて、エンジニアの人手不足は深刻であり、教育やナレッジ共有に割く時間も限られています。 限られたリソースでいかに生産性を高めるかが、開発現場における共通のテーマとなっています。…

2 weeks ago

要件定義フェーズをAI活用で解決する7つの問題と解決案

システム開発において最も重要であり、同時に最も難しい工程は何でしょうか。 多くのプロジェクトで共通して挙げられるのが 「要件定義」 です。 要求が曖昧なままプロジェクトが進むと、後工程での手戻りが一気に増え、QCD(品質・コスト・納期)は簡単に崩壊します。 実際に、プロジェクトが失敗する原因の6〜7割は、この初期工程である要件定義に起因すると言われています。それほど、要件定義は重要かつリスクの高いフェーズなのです。 しかし近年、AI技術の急速な進化により、従来の要件定義で「時間がかかる」「認識が揃わない」「情報が不足している」といった課題に対し、新たな解決策が生まれています。 この記事では、要件定義フェーズで頻発する7つの課題を取り上げ、それらをAIを活用してどのように改善できるのかを、具体例を交えて解説します。 要件定義フェーズでお悩みの方 AIを活用して開発効率を上げたい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めば要件定義で起こりうる問題とそれを解決する方法がわかりますよ。 問題1:要求が曖昧で担当者ごとに認識がズレる 要件定義で最初に直面する課題が「要求の曖昧さ」です。 ユーザー自身が課題を把握していても、機能としてどのように落とし込むべきか正確に説明できないケースは非常に多いです。…

2 weeks ago

システム開発のQCDは?プロジェクト管理を最適化

システム開発の現場では、「納期が守れない」「コストが膨らむ」「品質にばらつきがある」といった課題が常に発生します。 こうした問題の根底にあるのが、QCD(Quality・Cost・Delivery)のバランスです。 QCDは製造業を中心に使われてきた概念ですが、現在ではシステム開発やITプロジェクトの世界でも不可欠な管理指標として定着しています。 この記事では、QCDの意味とそれぞれの要素がプロジェクトに与える影響、さらに現代的な最適化の方法までを詳しく解説します。 システム開発を行いたい方 QCDについて知りたい方 社内のIT人材が不足している方 これらに当てはまる方におすすめの記事となっています。これを読めばシステム開発のQCDについて丸わかりですよ。 (more…)

1 month ago

アジャイル開発とウォーターフォール開発でリスクとスピードを徹底比較

システム開発の現場では、プロジェクトの進め方として「ウォーターフォール開発」と「アジャイル開発」が広く知られています。 どちらも目的は同じ──高品質なシステムを納期内に完成させることですが、そのアプローチはまったく異なります。 この記事では、特に「リスク」と「スピード」という2つの視点から両者を徹底比較し、それぞれの長所・短所、そしてどんなプロジェクトに向いているかを解説します。 アジャイル開発やウォーターフォール開発の違いを知りたい方 社内のIT人材が不足している方 システム化開発を行いたい方 これらに当てはまる方におすすめの記事となっています。これを読めばアジャイル開発とウォーターフォール開発のそれぞれの特徴が丸わかりですよ。 (more…)

1 month ago