Heroku での Python および Django アプリのデプロイ
最終更新日 2018年12月11日(火)
Table of Contents
Heroku に Python アプリをデプロイするための手順を示した説明については、『Heroku スターターガイド (Python)』を参照してください。
Python に期待されるファイル
次のいずれかのファイルがアプリのルートディレクトリにある場合、Heroku はそのアプリを Python アプリとして自動的に識別します。
-
requirements.txt
-
setup.py
-
Pipfile
これらのいずれのファイルもアプリのルートディレクトリにない場合、Python buildpack はアプリケーションを正しく識別できません。
Python のデプロイフロー
Heroku にデプロイするとき、requirements.txt
ファイルに指定した依存関係は、アプリの起動前に自動的にインストールされます。
Django を使用している場合、デプロイ処理中に collectstatic
コマンドも自動的に実行されます。このコマンドは、正しく設定するには扱いにくい場合があります。設定を簡単に行うには、Django-Heroku Python パッケージを追加します。これにより、すべてが設定されます。
アプリをデプロイする前に他のタスク (必要なデータベースの移行など) を自動的に実行するために、Release Phase コマンドをアプリに追加することができます。
Python のバージョンおよびアップグレード
デフォルトでは、アプリは最初にデプロイされたとき、使用されている Python を、そのバージョンにかかわらず使用し続けます。アプリの runtime.txt
ファイルに異なる Python ランタイムを指定して使用することができます。
アプリの Python のバージョンが最新でない場合、アプリのビルド出力で通知されます。