app はコピー、マウントは logs のみ
生成する Dockerfile は app/ をイメージにコピーします。docker run のマウントは DATA_DIR/logs だけなので、DATA_DIR/app/start.php を編集しても稼働中コンテナーは変わりません。古い応答を Docker キャッシュのせいと判断する前に Mounts を確認します。
確認済みコードの反映にはイメージ再ビルドとコンテナー置換が必要です。スクリプトはビルド後に旧同名コンテナーを強制削除し、毎回ホスト Dockerfile を上書きします。独自ビルド手順、アプリ、復旧用イメージを保全してから維持手順を決めてください。
再ビルド前に実際のバージョンを確認
これは旧 PHP 7.2 互換用です。php:7.2-cli と composer:2.2 タグは可変で、アーカイブのビルドは APT 検証を緩めます。composer install 段階には composer.json だけを渡し、ホストの lock ファイルは使いません。イメージ名だけでは再現性や安全性を確認できません。
下記の読み取り確認では実際のコンテナー名を使います。イメージ ID、マウント、PHP、Workerman の実バージョンを記録します。HTTP 状態の成功だけでは修正コードや業務処理の実行は確認できません。独自リクエストの動作を確認してから試験してください。
- docker inspect workerman3524 --format '{{.Image}} {{json .Mounts}}'
- docker exec workerman3524 php -v
- docker exec workerman3524 composer show workerman/workerman