MoChiwakiブログ

女性エンジニアがゆる~く書く備忘録ブログ 〜だいたいいつもつまづいている〜

Firebaseが予想以上に楽だったって話

Firebase とは

Firebase は、優れたアプリを開発し、ユーザー層を拡大し、より大きな収益を上げるためのツールです。インフラ構築に手間取ることなくビジネスを収益化し、ユーザーにとっての利便性に集中できます。

とFirebaseの公式サイトに書いてありますが、つまり
スマートフォンアプリで使われる機能をクラウドから提供するMBaaS(Mobile Backend as a Service)です。

私がやったのは

  • プラットフォームはWeb
  • Realtime Database
  • Storage
  • Hosting

基本的に公式ドキュメントで理解できます。
ありがたやぐーぐる\(^o^)/

思ったよりも障壁少なくできたので、
DatabaseとStrageについてはまた今度ー

Hosting

Hostingしたいところのディレクトリまで移動してinit

firebase init

ココらへんは色サイトのってるからそこで確認したほうがわかりやすいw

http://qiita.com/Ijoru/items/5b27f1c32df2222514fb

んで、jsonつくってくれるんだけど、そのjsonの編集が大体必要になる
私はこのfirebaseのプロジェクトでいくつかhostingしたかったので

redirect

{
  "database": {
    "rules": "database.rules.json"
  },
  "hosting": {
    "public":"www",
    "redirects":[ {
      "source": "www/index.html",
      "destination": "https://my-prj1.firebaseapp.com",
      "type" : 301
    }, {
      "source": "www/hoge/index.html",
      "destination": "https://my-prj1.firebaseapp.com/hoge/content.html",
      "type" : 301
    }]
  }
}

↑はdatabaseとhostingの設定が書いてあります。
hosting以下の
public :
実際にデプロイするディレクト
redirects :
destinationってURLでsourceをみてもらうという感じ
type :
301 か 302 を書きます。
一時的か、そうじゃないか違い

301 Moved Permanently
302 Found(Moved Temporarily)

Firebase のプロジェクト確認

firebase list

┌──────────────┬───────────────────────┬─────────────┐
│ Name         │ Project ID / Instance │ Permissions │
├──────────────┼───────────────────────┼─────────────┤
│ prj1         │ my-prj1               │ Ownyer      │
├──────────────┼───────────────────────┼─────────────┤
│ prj2(current)│ my-prj2               │ Editor      │
├──────────────┼───────────────────────┼─────────────┤
│ prj3         │ my-prj3               │ Owner       │
├──────────────┼───────────────────────┼─────────────┤
│ prj4         │ my-prj4               │ Owner       │
└──────────────┴───────────────────────┴─────────────┘

current にいるところが今のところ

同じディレクトリだけど違うfirebaseプロジェクト(テスト環境)にデプロイしたい

ココらへんもgoogleさんはちゃんと説明してくれている…!
https://developers-jp.googleblog.com/2016/08/firebase-hosting.html

firebase use --add  [プロジェクト名]

その後はどんな名前にするー?って聞かれるので名前を書く

// すでにあるなら
firebase use [プロジェクト名]

だからテスト環境にも本番環境にも簡単にデプロイすることができる。

うーん、やっぱり大体公式サイトで賄えるからブログ書く必要なかったかも。w

参考

www.youtube.com