Python ランタイムの指定
この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。
最終更新日 2024年06月07日(金)
Table of Contents
デフォルトでは、Heroku 上の新しい Python アプリケーションは「Python バージョンの指定」に示されている Python ランタイムを使用します。
別のサポートされるランタイムが必要な Python アプリケーションを実行している場合や、アップグレードの準備ができるまでパッチの更新に対してプロジェクトをロックする必要がある場合は、アプリに使用するランタイムを指定できます。
ランタイムの選択
Python ランタイムを指定するには、使用する正確なバージョン番号を宣言する runtime.txt
ファイルをアプリのルートディレクトリに追加します。
$ cat runtime.txt
python-3.12.4
runtime.txt
の形式は大文字と小文字が区別され、空白を含めることはできません。また、python-
接頭辞と、3 つのすべてのバージョン番号コンポーネント (メジャー、マイナー、パッチ) を指定する必要があります。
この形式に従っていない場合、アプリのデプロイは失敗します。
ローカルで実行している Python のバージョンを確認するには、仮想環境を有効にし、-V
フラグを使用して確認します。
$ python -V
Python 3.12.4
Python ランタイムのバージョンを変更するたびに、依存関係キャッシュが消去されるため、すべての依存関係の再インストールが必要になります。
requirements.txt
ファイルで明示的な依存関係バージョンを指定することをお勧めします。このファイルを更新するには、有効な仮想環境で pip freeze
コマンドを使用します。
$ pip freeze > requirements.txt
サポートされているランタイムバージョン
「Supported Python Runtimes」(サポートされている Python ランタイム) を参照してください。