skillup

技術ブログ

Database サーバー・ネットワーク

Firebaseでのミニアプリデプロイ

投稿日:

KVS的なDBを使うかもしれず、firebaseの復習をしております。以前、firebaseのサンプルなどちょこちょこ動かしましたが、firebaseに登録をしただけでデプロイまではしておりませんでした。

簡単にデプロイまではできたので、メモ。

https://github.com/umanari145/firebase

概要

firebaseはただ単にKVS型のデータを格納しておくだけではなく(最初そういうものかと思っていました。)、アプリ自体をデプロイしておくことができます。

DBだけではなく、アプリ自体をサーバーなしで配置できるインフラ環境になるかと思います。

こういったサービスのことをBass(Backend as a Service)と言います。

ログイン

npm install -g firebase-tools; のあと、

firebase login を入力すると、

上記のようなメッセージがでます。

URLにアクセスするとgoogleアカウントの認証を要求されるので、実際に認証するとハッシュ値がでてくるのでコピペしてあげれば、下記のようにメールアドレスが表示されます。

プロジェクト作成

firebase init で実際のプロジェクトが作成されます。

デプロイ

作ったものをデプロイする場合には firebase deploy でOKです。

上記のようなメッセージが吐かれて、無事にデプロイされます。

URLにアクセスすればアプリが確認できます。以下構成をみていきます。

使用できるサービスについて

functions

ここにAPIを実装することができます。

functions/index.js

一般的な新規作成、一覧、編集、削除(おまけで全削除)のRESTAPIです。とりあえず認証などはかけずに作ってみました。

上記のようなAPIを書いておき、firebaseにデプロイするとRESTAPIができています。

それぞれ対応するHTTPリクエストを書いて起きた時に、しっかりと結果を返してくれます。

ローカルでテストをするときは node functions/index.js とうちnodeのサーバーを立てましょう。

functionsの部分は独立した部分のようでいわゆるバックエンド側になるかと思います。

このディレクトリ自体にpackage.jsonを置いてライブラリをインストールし、このディレクトリ独自で管理することが一般的のようです。

hosting

冒頭でも書きましたが、当初KVSのサーバーだけをかりてファイルなどは別の箇所に置いておくものかと思いました。(そういう使い方ももちろんできますが・・)

.firebaserc

上記のファイルのhostingの部分がfirebaseのホスティングサービス(hosting)の設定になります。( firebase init 時に作られます。)

一般的にはpublic以下に公開ファイルをおくことが多いかと思います。ここにindex.htmlなどを置いてアクセスしてあげればfirebaseにデプロイした時にアプリを確認することができます。

参考リンク

Firebaseでデプロイしよう!

【第4回】 Firebase Hosting でスタティックな Web ページをデプロイしよう!【はじめてみよう Firebase】

-Database, サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

nginx上でのcakePHP

cakePHP上をCentOS,nginx上で公開するときのメモなどを。 cakeのversionは2.5です。 /var/www/html/sampleapp直下にプログラムを配置するものとします。 …

no image

SQL case式やウィンドウ関数の威力

プログラマには「プログラムは思った通りに動かない。書いた通りに動く。」「バグではない仕様です」なんて面白い格言がいろいろありますが、データベースの世界にも「WHERE句で条件分岐させるのは素人のやるこ …

no image

Gitのブランチについて

ちょっといろいろと触っているGitに関して。 前回は作業ディレクトリ、インデックス、コミットについて説明したのですが、今回はブランチについて行います。 Contents1 ブランチとは?2 ブランチに …

no image

自力での監視

Zabbixの勉強を進めていますが、マニュアル通りに設定していて、中で何をやっているかをあまり理解していなかったりします。 それだとちょっとまずいのでZabbixでの構築とともに自力での監視スクリプト …

no image

Sambaインストール

オフィスでサーバーをたてていますが、普段使っているメインのPCとのファイルのやりとりをSFTPクライアントなどでするのが面倒くさいので、同期させるためにSambaをインストールしました。 環境ですが、 …

アーカイブ