gitなにそれおいしいの?という方向け gitを一切使わないアプリのデプロイ方法

2015.5.22

20150306_01Webアプリを作ったりするモチベーションを保つには、無駄な時間はなるべく避けたいところ。特に初めてのアプリをdeployするなんて時にはググるだけで「ああ、わからんからもういいや」となってしまいがち。今回はそんな初心者デプロイ(言い方はおかしい)向けのgitを一切使わないデプロイをやってみましょう。

gitを一切使わないアプリのデプロイ

Herokuを利用する

一般的なレンタルサーバーでアプリを公開するのは実は敷居が高いです。Herokuを使いましょう。まずはHerokuでアカウントを取得し、Dropboxのアカウントも作りましょう。HerokuはPythonやRubyなどで作ったアプリをどん、と公開するときに便利です。アプリケーションの設置は5つまで無料。便利なアドオンなんかも充実しているので、テストに使う場合にも凄くお役立ちだと思います。

普通gitを使う場合

gitを使うデプロイの場合は、

$ heroku login
$ cd アプリプロジェクトファイル/
$ git init
$ heroku git:remote -a アプリ名
$ git add .
$ git commit -am "make it better"
$ git push heroku master

というgitコマンドを使ったりするわけですが、エラーを吐かれるとそれを調べるだけで一苦労。そもそも相談相手が居ない場合や、ぐぐっても知識不足から理解不能に陥りやすいです。せっかく作ったアプリなんだからWeb上で動いているのをすぐに見たいですよね。いよいよやっていきましょう。

10分程度でデプロイ準備完了

まずはHerokuダッシュボードの右上から + ボタンで新規アプリを作ります。

01

次にアプリ名称を決めます。Heroku全体で使用されていない名前じゃないとダメです。

02

Dropboxと連携しますのでDropboxのアイコンをクリック。

03

これでDropboxの中に アプリ/Heroku/アプリ名称 のフォルダが完成しました。Dropboxの同期が終われば直ぐ確認できるはずです。後はこのフォルダの中に出来たアプリ一式をほり込んでHerokuのデプロイボタンを押したら待つだけ。おしまい!簡単ですね。

04

Pythonの場合はフォルダの中身はこんなふうになります。

05

ProProcfileの中身は

web: python index.py

という感じで最初に動かすメインのスクリプトを指定します。

requirements.txtの中身はモジュールの依存関係を表したものですね。これを書いておかないとデプロイの時にインストールしてくれません。中身は例えばこのようになっています。

bottle==0.12.8
oauthlib==0.7.2
requests==2.7.0
requests-oauthlib==0.5.0
unicodecsv==0.12.0
gunicorn==19.3.0
psycopg2==2.6
SQLAlchemy==1.0.4
whitenoise==1.0.6

runtime.txtはPythonのバージョンを表記します。

python-2.7.9

もし今回のようにbottleを使ったアプリをデプロイする場合はbottleの最下部のrunを

run(host="0.0.0.0", port=int(os.environ.get("PORT", 5000)))

と書き換えておきましょう。

それではレッツデプロイ!