今すぐ始めるFirebase Hostingチュートリアル - Windows編

# はじめに

この記事では、最近よく利用されているFirebase Hostingを使ってサイトをホスティングする方法について解説していきます。今回題材にするのは、データベースとの連携を含んでいないものですが、Firebase Realtime DatabaseなどFirebaseから提供されているものを利用すれば、非常に簡単にデータベースを使ったWebアプリを作成することができます。また、今回はあくまでもホスティングについてのお話ですので、HTML、CSS、JSなどの解説は行いませんので、あらかじめご了承ください。

# Firebaseプロジェクトの作成

## Step.1 Firebaseにログインする

Firebase: https://console.firebase.google.com
まず、上記のサイトにアクセスしGoogleのアカウントでログインする。

## Step.2 新しいプロジェクトを作成する

![](https://gyazo.com/3ce772c0def1bf7392d26e202772cd82.png)
ログインが終わったら「プロジェクトの作成」よりプロジェクトの作成画面に移動し、適当なプロジェクト名を付けて「Firebaseの規約に同意します」にチェックを入れたら「続行」をクリックする。
![](https://gyazo.com/959cf275608f101636ef576bf3c4e26d.png)
次に遷移した画面では、Google アナリティクスを利用するかどうか問われるので、今回は利用しないので無効にしておく。無効にすると「プロジェクトを作成」というボタンが出てくるのでクリックする。
![](https://gyazo.com/4704f9fdec5e253f2fe11990e295c3e8.png)
`※Google アナリティクスを有効にした場合には、この後にGoogle アナリティクスの設定があります。`
少し待って表示される「続行」のボタンをクリックすると、Firebaseの管理画面に遷移する。これでFirebaseプロジェクトの作成は完了した。

# Firebase Hostingにホスティングする

## Step.1 Firebase CLIをダウンロードする

Firebase CLI リファレンス: https://firebase.google.com/docs/cli?hl=ja#install-cli-windows
上記のページのWindowsの「スタンドアロン バイナリ」のタブから「Windows 用の Firebase CLI バイナリ」をダウンロードしてください。

![](https://gyazo.com/636d4862c113c4abb3cece045dee2238.png)

## Step.2 Firebase CLIでログインする

ダウンロードしたexeファイルを実行すると、専用のターミナルが起動し、データの収集を許可する旨の質問がされるので、どちらかを選んで答える。
`※yと入力してEnterを押すとYes、nと入力してEnterを押すとNoが選ばれる。`
![](https://gyazo.com/a86e7e716e5802d3af2d983455577404.png)
ブラウザが立ち上がりGoogleのログインページに遷移するので、自分のGoogleアカウントでログインする。下記のような画面に遷移すれば成功。
![](https://gyazo.com/9141d82fbddc4c1243b63bae98cdc68b.png)

## Step.3 ホスティングするサイトのソースを準備する

今回はCドライブの直下に`Qiita-test-project`という名前のディレクトリを作成した。
`※ディレクトリ名は任意。Firebaseのプロジェクト名と合わせる必要もない`
その中に`public`というディレクトリを作成し、その中にソースを置く。ホスティングするもののディレクトリ構造の一例を下に示しておく。

```terminal
Qiita-test-project
└public
   ├index.html
   ├404.html
   ├scripts
   │  └script.js
   └styles
      ├index.css
      └404.css
```

## Step.4 Firebase CLIでホスティングの設定をする

ソースの配置が終わったら、Firebase CLIのターミナルに戻り、`cd`コマンドで先程ソースを配置したディレクトリへ移動する。ただし、移動するのは`public`ではなく、その1階層上の`Qiita-test-project`まで。
それが終わったら`firebase init`コマンドを実行、下記のような画面が表示されるので、ディレクトリが正しいものかを確認し、正しければ`Yes`を選択する。
![](https://gyazo.com/c7091e2d59cb6b9222c00dd5fe31b4b4.png)
次に利用するFirebaseの機能を聞かれるので、`Hosting`を選択する。方向キーでカーソルを移動し、Spaceで選択する。
`※取り敢えず全部選択とかやると、めんどくさいことになるので注意`
![](https://gyazo.com/12d17ac50ce00749ad95005958f2a626.png)
選択が完了するとプロジェクトの選択画面が出るので、`Use an existing project`から先程作成したFirebaseのプロジェクトを選択する。
![](https://gyazo.com/868ce931d32a1613241722282b6fe8d9.png)
プロジェクトを選択するとどのディレクトリをデプロイするか聞かれるので、そのままで続ける。
![](https://gyazo.com/517496f77af74a562aab18b64ef1ab39.png)
次にシングルページアプリケーションとして設定するかを聞かれるので、今回は`No`を選択する。
![](https://gyazo.com/3d2fa1a3e6048443c3574558bfa025ee.png)
次はGitHubと連携するかを聞かれるので、`No`を選択する。
![](https://gyazo.com/e913316fb3aec66e1eb80b18a63caea1.png)
それから`404.html`と`index.html`を上書きするか聞かれるので、`No`を選択、ここで`Yes`を選択すると問答無用で上書きされてしまうので慎重に。
![](https://gyazo.com/05cfc4c2f28ddbbf959703e254d80716.png)
設定が完了すると、ホスティングに必要なファイルが自動で生成される。

## Step.5 Firebaseへデプロイする

それが終わったら`firebase deploy`コマンドを実行。少し待って`Deploy complete!`と表示されればデプロイが完了している。
`Hosting URL`からホスティングされたページを確認できるので、正しくホスティングされているか確認しよう。

# 参考記事

Firebase Hostingに静的サイトをデプロイする手順のメモ
https://qiita.com/rubytomato@github/items/b83caa01fc9c4993f526