固定IPとかDDNSではお金がかる。
そこで思ったのが、今流行のクラウドサービスを利用すれば無料で出来るんじゃん?と。
で軽く調べると世の中には沢山似たようなサービスがあったとさ。ありすぎてよくわからないので、自分に一番身近で無料で気軽に使えそうなのが、Goole App Engine だった。
ここで使えるスクリプト言語は日頃使っているJavaやPythonで書けるらしいと。
(ほんとはRubyで書きたいけど。実はそういう環境を作れたりするんだなこれが)
無料で10個の独立したアプリケーションを作れるらしいと。
MySQLじゃないけど、もどきSQLDBっぽいものが使えるらしいと。
Cronタスクも走らせられるらしいと。
日本語ドキュメントも分かりやすい。いけそうだ。
プランとしては、
app-engine上の自分のアプリにcronとかで定期的に元wavecast(名前が欲しいな・・)でアクセスして、そんときのWANアドレスをアプリ側のDBで覚えておいて、アプリにブラウザでアクセスしたら、WANアドレスでのURLが出てくるようにすればよい。
wavecast.tvとイメージは同じだ。
サイト開設のために必要なもの
・当然googleアカウントがいる。
・携帯キャリアのメールアドレスがいる。うーん。これがいやだ。
アプリケーション作成(サーバー)
appengine.google.comでアプリケーション名を決めてアプリ作成。
ここで作成した名前はhttp://アプリ名
自分は.comドメインを持ってるんで頭を同じ名前をつけた。
早い者勝ちなので、何はさておき、作っておきます。
SDKダウンロード
ローカルでアプリ開発するためのライブラリとアップロード・ダウンロードするツール一式が入ったSDKをダウンロードする。JavaにするとJRubyが使えるようになるらしいけど、今んところPythonじゃないとサポートしていないサービスがあるらしいのでPythonにした。
そうそう。Mac/Windows版のSDKを使えばGUIで便利にできるらしい。
私は端末一つで十分なので使わない。試しにWindows版を入れてみたけどMinGWやCygwinとか色々入ってるためかまともに動かなかった。やっぱりConsoleが一番!
アプリケーション作成(ローカル)
チュートリアルにそって、ざっと流れを把握する。これってRailsみたいだ。
全くその通りのことを説明されているぺーじもありました→appengineでRoR。
チュートリアルのHelloWorldはせっせと必要なファイルを手作業で作る説明になってるけど、SDKに、'new_project_template'があるんで、これをコピって使うのが手っ取り早い。
アプリ名と同じ名前のディレクトリを作って、そこに放り込む。
app.yaml
application: サーバー側に作成したアプリ名を記述
main.py
あとは、ここのgetメソッドに色々書けばアプリとして動作する。
動作テスト
$ dev_appserver.py [app-name] で、テストサーバーを起動する。
http://localhost:3000でアクセスして動作を確認。
アップロード
$ appcfg.py update [app-name] で、サーバーにアップロード
動作テストが終わったら、本物へアップロードして動作確認。
サイト開設から、アプリ動作確認まで出来たので、次回は目的のものを作ってみる。
0 件のコメント:
コメントを投稿