#はじめに
どうもこんばんは、吉田プログラマーです。
herokuへのデプロイ経験は2回しかありませんが、エラーに対して確認してきた点を述べていきます。
なお、今回は__デプロイ時のエラー__ではなく、__デプロイ後のアプリケーションエラー__について説明します。
出ました、憎きアプリケーションエラーの画面ですね。
親の顔よりとまではいかずとも、親戚の顔より見た人は多いんじゃないでしょうか(多分)。
[heroku logs --tail]でログを確認してもいまいちピンと来ませんでしたが、エラーの理由は結構初歩的なミスばかり。。。
遭遇したエラー原因を以下に記していきます。
##①Procfile
ここでミスしてはいけない点は、ちゃんとプロジェクト名を指定出来ているかだと思います。
Djangoで何かしらのアプリケーションを開発する際、最初にこのコマンドを打ちますよね。
django-admin startproject <プロジェクト名>
ここで指定したプロジェクト名は、Procfileの記述の際にも使用します。
web: gunicorn <プロジェクト名>.wsgi
それとProcfileの配置場所にもご注意ください。__プロジェクトフォルダ直下に作成__となります。
##②requirements.txt
このテキストファイルも必ず、__プロジェクトフォルダ直下に作成__します。
あと必要なライブラリをインストールした場合、下記コマンドで更新を忘れないようにしましょう。
pip freeze > requirements.txt
デプロイ後の「 heroku run python manage.py migrate 」実行時にエラーが出てしまいます。
##③runtime.txt
ちゃんとPythonのバージョンも教えてあげないとですね。こちらも当然、__プロジェクトフォルダ直下に作成__します。
使用しているPythonの現バージョンは以下のコマンドを実行して確認します。
python --version
表示されたバージョンが分かり次第、runtime.txtには以下のようにバージョンを記述していきます。
python-<pythonバージョン>
##④マイグレーション
上記3ファイルを作成後、今度はマイグレーションもしなければなりません。herokuのpostgreSQLに対してですね。
heroku run python manage.py migrate
##⑤スーパーユーザー
開発環境同様、スーパーユーザーの作成も必須です。
以下のコマンドを打って作成しましょう。
heroku run python manage.py createsuperuser
#おわりに
簡単に述べましたが、他にも沢山の原因があるかもしれません。
いま一度デプロイの方法等を一から確認し、スペルミスがないか、手順に抜け落ちがないか確認した方が良いでしょう。
……と自信満々に言ってますが、こちらも十分に気を付けていかないとですね(汗)
記事に間違い、追記すべき点等がありましたら、コメント欄にご連絡頂けますと幸いです。