あれもPython,これもPython

Pythonメモ※本サイトはアフィリエイトを利用しています

Herokuを久々に使用する

今度の勉強会に向けて、
tornadoをherokuで動かすテストをしていた。

久々ぶりなので、
herokuでところどころひっかかったので備忘録

1. buildpackの設定

herokuは使用する言語を自動で判断してくれるのだけれど、
何を間違ったかPythonではなく、PHPになってしまった。

その状態でpushしようとしてもエラーになる。
対策は手動でbuildpackを変える。

heroku buildpacks:set heroku/python

2.必要なファイルの名前を間違える

herokuはお作法として、
動かすのに幾つか必須のファイルがある。
Pythonの場合は

  • Procfile
  • requirements.txt

の2つは必須。

requirement.txtと、sが抜けてて、
しばらくアプリケーションエラーが起きていた。
※ちなみにログを見たい場合は、

heroku logs

3. ProcfileにIPアドレスを書いていた

ローカルでgunicornを動かしていたコマンドを
そのままProcfileにコピペしたので、
IPが書かれていたのでエラーになった。

当たり前っちゃ、当たり前。

4. MongoLabでdb名を誤っていた

DBとしてMongoLabというアドオンを使おうと思ったのだけど、
どうもエラーがでる。
と思ったら、MongoLabはdb名まで自動で決まってしまい、
指定できるのはcollectionからだった。
db名を指定されたものに変えたら無事通った。