さまざまな依存関係を含むrequirements.txt
ファイルを持つpythonアプリケーションを実行しています。このアプリケーションをPivotalCloud Foundry環境にデプロイしています。ただし、デプロイしている環境はエアギャップされています。 。したがって、依存関係を取得できないようです。
python CFビルドパックのGitリポジトリは、アプリケーションにvendor
ディレクトリがある場合、そこから依存関係を取得する可能性があることを示唆しています: https://github.com/cloudfoundry/python-buildpack/blob/master/bin/Steps/pip-install#L18
私の質問は、requirements.txt
ファイルに記載されている依存関係をローカルでvendor
フォルダーにダウンロードするにはどうすればよいですか?
次のコマンドですべての依存関係を取得できます(もちろんインターネット接続が必要です)
pip download -r requirements.txt
次に、次のコマンドを使用して、これらの依存関係をオフラインでインストールできます。
pip install -r requirements.txt --no-index --find-links file:///tmp/packages
--no-index
:パッケージインデックスを無視します(代わりに--find-links
URLのみを参照します)。
-f, --find-links <URL>
:htmlファイルへのURLまたはパスの場合、アーカイブへのリンクを解析します。ディレクトリであるローカルパスまたはfile://
URLの場合は、ディレクトリリストでアーカイブを探します。
この答えは この投稿 から取られています
見てください: http://docs.cloudfoundry.org/buildpacks/python/index.html#vendor-app-dependencies
tl; dr pip install --download vendor -r requirements.txt
Pipを使用して開発ボックスにインストールし、チェックインするだけです。