This documentation explains how to use the Paketo PHP Buildpack to build applications for several common use-cases. For more in-depth description of the buildpack’s behavior and configuration see the Paketo PHP Buildpack Reference documentation.
pack
コマンドを使って、PHP Paketo Buildpack でサンプルアプリをビルドします。
git clone https://github.com/paketo-buildpacks/samples cd samples/php/webserver pack build my-app --buildpack gcr.io/paketo-buildpacks/php \ --builder paketobuildpacks/builder:full
Copied!
アプリケーションの実行方法は README ファイル を参照してください。
注意:PHP Paketo Buildpack は Paketo Full ビルダーが必要です。Full ビルダーにしか含まれないOSのシステムライブラリを使用するからです。
PHP Distribution Cloud Native Buildpack では、デプロイするときに使用する PHP のバージョンを、いろいろな方法で変更できます。
例えば、buildpack.yml
や composer.json
で指定できます。
PHP Distribution Cloud Native Buildpack で使用できるバージョンは、 PHP Distribution Cloud Native Buildpack のリリースノート で確認できます。
バージョンを指定する場所の優先順位は buildpack.yml, composer.json
の順になっています。
buildpack.yml
を使用する
Buildpack でアプリケーションをデプロイするときに使用する PHP のバージョンを buildpack.yml
で指定できます。
バージョン番号は semver の形式で記述します。
--- php: version: 7.2.*
Copied!
composer.json
を使用する
composer を使用するアプリケーションでは、composer.json
の require
フィールドに使用する PHP のバージョンを指定できます。
例えば、v7.1 より新しいバージョンの PHP を使用するときは次のように記述します。
{ "require": { "php": ">=7.1" } }
Copied!
If your app has a composer.lock
file, the buildpack will use
the php version defined there.
アプリケーションのルートディレクトリに composer.lock
があるときは、そのファイルに指定されたバージョンの PHP を使用します。
composer を使用するアプリケーションでは、buildpack.yml
で次のような設定ができます。
composer: # 使用する composer のバージョン番号を semver の形式で記述します version: 1.10.x # composer install の引数を記述します # default: ["--no-dev"] install_options: ["--no-dev"] # ベンダーディレクトリ名を指定します。初期値は vendor です vendor_directory: vendor # composer.json を配置したディレクトリを記述します。初期値はルートディレクトリです json_path: composer # compose global を実行させるときに指定する引数を記述します install_global: ["list", "of", "install", "options"]
Copied!
PHP Paketo Buildpack では次の3種類の Web サーバーを選択できるようになっています。
使用する Web サーバーは buildpack.yml
で指定できます。
php: # Web サーバーの選択肢(初期値は php-server):php-server, httpd, nginx webserver: php-server
Copied!
httpd
や nginx
を使用する場合、Buildpack が httpd.conf
や nginx.conf
などの適切な設定ファイルを生成します。
それぞれの設定ファイルが使用する設定項目を指定することもできます。
# buildpack.yml php: # アプリケーションコードを配置するディレクトリ名。初期値は htdocs webdirectory: htdocs # ライブラリコードを配置するディレクトリ名。初期値は lib libdirectory: lib # 使用する cli スクリプト名。初期値は空 script: # サーバー管理者の電子メール。初期値は admin@localhost serveradmin: admin@localhost
Copied!
composer を使用するアプリケーションに正しい vendor
ディレクトリがある場合、Buildpack はそこに含まれるパッケージをダウンロードしません。
vendor
ディレクトリに配置したパッケージをそのまま使用します。
Buildpack の提供する php.ini
とは別に任意の .ini
ファイルを使用するときは、アプリケーションのルートディレクトリに作成した .php.ini.d
ディレクトリへ配置します。
詳しくは PHP_INI_SCAN_DIR
のセクション「変数」を参照してください。
PHP Paketo Buildpack では、ビルド時や実行時のどちらでも、CA 証明書の構成 手順に従って、ユーザーが自分で用意した CA 証明書をコンテナのルートトラストストアへ配置できます。
PHP Paketo Buildpack では、Procfiles の導入 手順に従って、アプリケーションのコンテナイメージが起動するプロセスを変更できます。
PHP Paketo Buildpack では、環境変数の構成 手順に従って、アプリケーションのコンテナイメージを実行するときの環境変数を変更できます。
PHP Paketo Buildpack では、ラベルの構成 手順に従って、アプリケーションのコンテナイメージにラベルを指定できます。
Last modified: September 13, 2021