コンテンツにスキップ

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ツールは以下の通りです:

Node.jsバージョンの変更#

デフォルトでは、このイメージにはnodejs-currentパッケージ(2022年3月時点でv17)が搭載されています。別のバージョンが必要な場合は、現在のバージョンを削除して目的のバージョンをインストールできます。例えば、Node.js 16をインストールするには、Dockerfileを次のように変更します。

Node.jsバージョンの更新
RUN apk del nodejs-current \
    && apk add --no-cache nodejs=~16

環境変数#

いくつかのオプションは環境変数で設定できます。php-fpm環境変数も適用されます。

名前 デフォルト 説明
MARIADB_MAX_ALLOWED_PACKET 64M MySqlクライアントの最大許容パケットサイズを制御します。