PHP バージョン 8.1 にロールバックする方法: Docker phpdockerio/php:8.1-fpm ビルドは PHP バージョン 8.2 を使用します
P粉757640504
P粉757640504 2023-11-05 09:52:26
0
1
782

私は PHP-FPM Docker コンテナーでプロジェクトを実行しています (構成ファイルの詳細は以下を参照)。コンテナを構築して Composer を実行しようとすると、PHP 拡張機能が見つからないことを報告するエラーが表示されます。ただし、私のビルド ファイルはこれらの拡張機能をカバーしていると思います (下記の docker/php-fpm/Dockerfile を参照)。

コンテナはデフォルト バージョンとして php8.2 で構築されていることがわかりました。シンボリックリンクを変更してデフォルトのバージョンをphp8.1に戻すことはできましたが、これは正しい解決策ではないようです。誰かがより良い解決策を提案できますか?

コンテナが 8.2 を実行していることを確認するにはどうすればよいですか: コンテナ内で php --version を実行すると、次の結果が得られます:

リーリー

その後、どのphpが私に与えてくれました:

リーリー

/etc/alternatives にリンクされている PHP バイナリへのシンボリックリンクをたどりました:

リーリー

これは私には正しくないようです。それらを 8.1 バージョンに再リンクすることができ、すべてが正常に動作しているように見えますが、コンテナーを再構築するとどうなりますか?

私のファイルの詳細:

docker-compose.yml

リーリー

docker-compose.override.yml

リーリー

docker/php-fpm/Dockerfile

リーリー


P粉757640504
P粉757640504

全員に返信(1)
P粉418854048

これは、私がロードしていた拡張機能が原因であることが判明しました。 docker/php-fpm/Dockerfile に php-xdebug をインストールしました。これにより、コンテナーが PHP8.2

をロードしました。

バージョン 8.1 を指定してくださいphp8.1-xdebug問題は解決しました。

GitHub での私の質問に答えてくれた luispabon に感謝します。彼は画像に問題があるに違いないと考えました。 https://github.com/phpdocker-io/base-images/issues/ 62

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート