PHP-CLI#
Lagoonの php-cli Dockerイメージです。Lagoonの php-fpmイメージをベースに、日常的な操作に必要なコマンドラインツールがすべて揃っています。
cliイメージから起動されたコンテナ(またはポッド)はComposerやNode.jsベースのプロジェクトのコードビルドを担当します。
また、MariaDBとPostgreSQL両方のデータベースcliが含まれています。
情報
このDockerfileは、Lagoon内でのあらゆるcliニーズの基盤として使用されることを想定しています。
サポートされているバージョン#
- 7.3 (互換性のためのみ利用可能、公式サポートは終了しています) -
uselagoon/php-7.3-cli - 7.4 (互換性のためのみ利用可能、公式サポートは終了しています) -
uselagoon/php-7.4-cli - 8.0 (互換性のためのみ利用可能、公式サポートは終了しています) -
uselagoon/php-8.0-cli - 8.1 Dockerfile (2024年11月までセキュリティサポート) -
uselagoon/php-8.1-cli - 8.2 Dockerfile (2025年12月までセキュリティサポート) -
uselagoon/php-8.2-cli - 8.3 Dockerfile (2026年12月までセキュリティサポート) -
uselagoon/php-8.3-cli
すべてのPHPバージョンは、それぞれのDockerfilesを使用します。
Lagoonの適応#
このイメージはLagoonで使用されることを想定して準備されています。そのため、すでにいくつかのことが行われています:
- フォルダの権限は、
fix-permissionsで自動的に適応されるため、このイメージはランダムなユーザーで動作します。 COMPOSER_ALLOW_SUPERUSER=1は、rootとしてComposerを使用することに関する警告を削除します。80-shell-timeout.shスクリプトは、コンテナがKubernetes環境で実行されているかどうかを確認し、アイドル状態のcliポッドに対して10分のタイムアウトを設定します。cliコンテナは、Lagoonによって注入されるか、SSH_PRIVATE_KEY環境変数で定義されたSSHキーを使用します。
CLIツール#
組み込まれているCLIツールは以下の通りです:
composerバージョン1.9.0 (COMPOSER_VERSIONおよびCOMPOSER_HASH_SHA256経由で変更可能)node.jsバージョン17 (2022年3月現在)npmyarnmariadb-clientpostgres ql-client
Node.jsバージョンの変更#
デフォルトでは、このイメージにはnodejs-currentパッケージ(2022年3月時点でv17)が搭載されています。別のバージョンが必要な場合は、現在のバージョンを削除して目的のバージョンをインストールできます。例えば、Node.js 16をインストールするには、Dockerfileを次のように変更します。
環境変数#
いくつかのオプションは環境変数で設定できます。php-fpm環境変数も適用されます。
| 名前 | デフォルト | 説明 |
|---|---|---|
| MARIADB_MAX_ALLOWED_PACKET | 64M | MySqlクライアントの最大許容パケットサイズを制御します。 |