背景
Firebaseで動くMakdownなWikiでTech的なアウトプットをする試みです。
お試しになりたい方向け
Octopusについて
以下RepositoryをCloneしてBuildしてDeployしてください。
Requirements
- npm
- node.js
- Googleアカウント & Firebase
基本的なHowto
- Firebaseプロジェクト作成(ググって)
- Authenticationから必要に応じた認証方法を設定しておく。(自分はGoogleだけ)
- Databaseを
Realtime Database
として作成しルールを設定しておく。(Realtime Database設定
参照されたし)
git clone git@github.com:livechat/octopus.git
cp src/config/config.template.js src/config/config.js
-
vim rc/config/config.js
で1で作成したFirebaseのプロジェクトのconfig情報をコピペ npm install --build-from-source
npm run build
Firebase HostingにDeploy1
- firebase-toolsをインストールしてない人はインストール
npm install -g firebase-tools
-
firebase login
してBrowser認証する cd /path/to/project
-
firebase init
してhosting
にSpace
でチェックを入れてEnter
する- 対象ディレクトリは
build
にする(デフォルトはhome
)
- 対象ディレクトリは
早速ハマったポイント
Mac OSXでDeployするとgRPC関連でnpm install
が失敗する
対応方法 = Mac OSXじゃなくてLinuxでnpm install --build-from-source
する。
ググったらこんなIssueが出てくる。Node.jsのv11.x固有の問題っぽい?
Realtime Database設定
自分の場合はread
とwrite
共に自分のドメイン(G Suite)に限定しました。
{
"rules": {
".read": "auth.token.email.endsWith('@tokifu.jp')",
".write": "auth.token.email.endsWith('@tokifu.jp')"
}
}
まとめ
SFSG
-
Netlify使うと良いよ的な事がREADMEに書いてあるんだけど、Firebase Hostingも速いらしいのでとりあえず試してみる。 ↩