HerokuにデプロイするPythonアプリを作成しています。Herokuのガイドによると、パッケージ要件をPiprequirements.txt
ファイルにリストする必要があります。このガイドでは、パッケージをローカルにインストールしてから、実行pip freeze > requirements.txt
して凍結された要件ファイルを書き込むように指示しています。
ただし、Herokuへのデプロイで使用したいパッケージの1つをローカルにインストールできません。私のオペレーティングシステムと互換性がありません。
requirements.txt
では、Herokuに適したこのパッケージを含めるにはどうすればよいですか?
私が考えることができる唯一の方法は手でそれを書くことです-しかし、問題のパッケージはそれ自身の多くの依存関係を持っているので、これは退屈でしょう。その上、これはパッケージマネージャーのポイントを打ち負かします。
RubyアプリをHerokuにデプロイする場合、Bundlerを使用するとこれが簡単になります。私のGemfileに
gem "pg", :group => :production
gem "sqlite3", :group => :development
次に、コマンドbundle install
はフリーズされたバージョンリストを書き込みますGemfile.lock
(に類似requirements.txt
)。'production'グループの下にリストされているパッケージはインストールされませんが、バージョン管理されたパッケージの一貫したリストはフリーズします。
例:GemfileおよびGemfile.lock