docs community blog github
Edit

Paketo Buildpacks で Python アプリケーションをビルドする

This documentation explains how to use the Paketo Python Buildpack to build applications for several common use-cases. For more in-depth description of the buildpack’s behavior and configuration see the Paketo Python Buildpack Reference documentation.

サンプルアプリをビルドする

pack コマンドを使って、Paketo Python Buildpack でサンプルアプリをビルドします。

git clone https://github.com/paketo-buildpacks/python
cd samples/python/pip
pack build my-app --buildpack gcr.io/paketo-buildpacks/python \
  --builder paketobuildpacks/builder:base
copy to clipboard
Copied!

アプリケーションの実行方法は README ファイル を参照してください。

Paketo Python Buildpack は、さまざまな種類の Python アプリケーションに対応しています。

CPython のインストールするバージョンを指定する

Python Cloud Native Buildpack では、デプロイ時に使用する CPython 3 (Python 3 の参照実装)のバージョンを指定できるようになっています。 バージョンは環境変数 BP_CPYTHON_VERSION で指定できます。 指定できるバージョンは、Python Cloud Native Buildpack のリリースノート で確認できます。

環境変数 BP_CPYTHON_VERSION は、Buildpack のプラットフォームが要求する方法や、project.toml で指定できます。

[build]
  [[build.env]]
    name = "BP_CPYTHON_VERSION"
    value = "3.6.*" # any valid semver constraints (e.g. 3.6.7, 3.*) are acceptable
copy to clipboard
Copied!

CPython のバージョンを指定しなかった場合、Buildpack の buildpack.toml に記述された初期値を使用します。

パッケージマネージャを使用する

Python Cloud Native Buildpack は次のようなパッケージマネージャに対応しています。

それぞれのパッケージマネージャについて詳しく説明していきます。

Pip

Pip は Python アプリケーションの依存ライブラリを管理するツールです。 Buildpack はアプリケーションコードベースのルートディレクトリに配置された requirements.txt を発見すると、pip をインストールし、アプリケーションの使用する依存ライブラリをインストールします。

環境変数 BP_PIP_VERSION により、インストールする Pip のバージョンを指定できます。 指定できるバージョンは、Python Cloud Native Buildpack のリリースノート で確認できます。

Pipenv

Pipenv は Python アプリケーションの依存ライブラリを管理するツールです。 Buildpack はアプリケーションコードベースのルートディレクトリに配置された Pipfile を発見すると、pipenv をインストールし、アプリケーションの使用する依存ライブラリをインストールします。

環境変数 BP_PIPENV_VERSION により、インストールする Pipenv のバージョンを指定できます。 指定できるバージョンは、Python Cloud Native Buildpack のリリースノート で確認できます。

Buildpack は Pipfile.lock で指定されたバージョンの CPython を使おうとします。 ただし、環境変数 BP_CPYTHON_VERSION が指定されているときは、そちらの内容を優先します。

Miniconda

Miniconda は Python アプリケーションの実行環境と依存ライブラリを管理するツールです。 Buildpack はアプリケーションコードベースのルートディレクトリに配置された environment.yml あるいは package-list.txt を発見すると、conda の環境を作成、および、更新します。

miniconda のバージョンは指定できません。

独自の CA 証明書をインストールする

Paketo Python Buildpack では、ビルド時や実行時のどちらでも、CA 証明書の構成 手順に従って、ユーザーが自分で用意した CA 証明書をコンテナのルートトラストストアへ配置できます。

Buildpack の設定する起動プロセスを変更する

Paketo Python Buildpack では、Procfiles の導入 手順に従って、アプリケーションのコンテナイメージが起動するプロセスを変更できます。

アプリケーションを起動するときの環境変数を設定する

Paketo Python Buildpack では、環境変数の構成 手順に従って、アプリケーションのコンテナイメージを実行するときの環境変数を変更できます。

アプリケーションのコンテナイメージにラベルを設定する

Paketo Python Buildpack では、ラベルの構成 手順に従って、アプリケーションのコンテナイメージにラベルを指定できます。

Edit

Last modified: September 13, 2021