Firebaseを使えばある程度は無料でWEBアプリを公開できる。
とりあえずデプロイできたのでログを残しておく。
1、デプロイしたいアプリのディレクトリに移動する
$ pwd
$ /Users/username/projects/ReactTest/helloworld
2、npmでfirebaseのパッケージをインストールする
$ npm install firebase --save
3、firebaseでデプロイする為に必要なjsファイルを作成する
$ mkdir firebase $ touch firebase/config.js $ touch firebase/index.js
4、各ファイルに以下のコードを記述する
↓ index.js
import firebase from 'firebase'; import { firebaseConfig } from './firebase/config.js'; export const firebaseApp = firebase.initializeApp(firebaseConfig); export const firebaseDb = firebaseApp.database();
↓ config.js
export const firebaseConfig = { apiKey: "****************", authDomain: "****************", databaseURL: "****************", storageBucket: "****************", messagingSenderId: "****************" };
✳︎✳︎✳︎の箇所にはfirebaseコンソールで作成されたAPIキー等を記述する(後述)
5、webブラウザでfirebase(https://console.firebase.google.com/)にログインし、適当なプロジェクトを作成する
※firebaseのログイン方法およびプロジェクト作成については簡単なので省略
6、プロジェクト画面を開きWEBアプリ用アイコンをクリックする
7、APIキー等の情報が表示されるので、赤枠の部分を先ほど作成したfirebase/config.jsにコピペする
8、デプロイに必要なツールをインストールする為、ターミナルで以下のコマンドを実行
$ npm install -g firebase-tools
9、インストールが成功したらfirebaseにログインする
$ firebase login
firebaseが情報を収集することに許可を求められるのでyesを入力するとブラウザでリンクが開かれる
? Allow Firebase to collect anonymous CLI usage and error reporting information? Yes
リンク先でGoogleアカウントを選択してログインする
以下の画面が表示されたら成功。ウィンドウは閉じて良い。
ウーホー!
10、firebaseを初期化する
$ firebase init
かっこいいけど読めない文字が表示される。FIREBASE?
11、セットアップ方法について聞かれるので今回は一番上のDatabaseのみ選択してエンターキーを押下する
操作方法はキーボードにて
矢印キーでカーソル移動
スペースキーで選択
エンターキーで決定
12、使用するプロジェクトを聞かれるのでfirebase管理画面で作成したプロジェクトを選択する
13、データベースのルール設定をどのファイルで行うか聞かれるのでそのままエンターキーを押下する
14、アプリ内にfirebase.jsonとdatabase.rules.jsonが作成されていることを確認し、それぞれ以下のように編集する。
↓ firebase.json
{ "database": { "rules": "database.rules.json" }, "hosting": { "public": "build" } }
↓ database.rules.json
{ "rules": { ".read": "true", ".write": "true" } }
15、編集が完了したらターミナルでビルド実行
$ npm run build
16、ビルドが問題なく完了したらデプロイする
$ firebase deploy
デプロイが完了するとHosting URLが表示されるので、ブラウザで開く
アプリの画面が表示されたら成功
↓参考サイト様
React & Firebaseで簡単なChatアプリを作ってみた - Qiita
Reactで作成したアプリをfirebaseでデプロイする方法 | ウェブ系ウシジマくんのテックブログ