亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

如何回滾到 PHP 版本 8.1:Docker phpdockerio/php:8.1-fpm 建置使用了 PHP 8.2 版本
P粉757640504
P粉757640504 2023-11-05 09:52:26
0
1
1051

我正在 PHP-FPM docker 容器上運(yùn)行我的專案(下面是設(shè)定檔的詳細(xì)資訊)。當(dāng)我建立容器並嘗試運(yùn)行 Composer 時(shí),我收到錯(cuò)誤報(bào)告缺少 PHP 擴(kuò)充功能。但是,我認(rèn)為我的建置檔案涵蓋了這些擴(kuò)充功能(請(qǐng)參閱下面的 docker/php-fpm/Dockerfile )。

事實(shí)證明,容器是使用 php8.2 作為預(yù)設(shè)版本建構(gòu)的。我已經(jīng)能夠更改符號(hào)連結(jié)以將預(yù)設(shè)版本設(shè)定回 php8.1 但這似乎不是正確的解決方案。誰能提出更好的解決方案?

我如何知道容器正在運(yùn)行 8.2: 在容器內(nèi)我運(yùn)行 php --version 並得到:

root@fee8cc9ff790:/application# php --version
PHP 8.2.0 (cli) (built: Dec  8 2022 13:56:08) (NTS)

然後 which php 給了我:

root@fee8cc9ff790:/application# which php
/usr/bin/php

我按照符號(hào)連結(jié)找到了 /etc/alternatives 中連結(jié)的 PHP 二進(jìn)位檔案:

phar -> /usr/bin/phar8.2
phar.phar -> /usr/bin/phar.phar8.2
php -> /usr/bin/php8.2
phpdbg -> /usr/bin/phpdbg8.2

這對(duì)我來說似乎不太合適。我能夠?qū)⑺鼈冎匦逻B結(jié)到它們的 8.1 版本,現(xiàn)在一切似乎都運(yùn)作良好,但是當(dāng)我重建容器時(shí)會(huì)發(fā)生什麼?

我的文件詳細(xì)資料:

docker-compose.yml

###############################################################################
#                          Generated on docker.io                          #
###############################################################################
version: '3.9'
services:
    mailhog:
        image: 'mailhog/mailhog:latest'

    redis:
        image: 'redis:alpine'

    mysql:
        image: 'mysql:8.0.27'
        working_dir: /application
        platform: linux/amd64
        environment:
            - MYSQL_ROOT_PASSWORD=
            - MYSQL_DATABASE=
            - MYSQL_USER=
            - MYSQL_PASSWORD=

    webserver:
        image: 'nginx:alpine'
        working_dir: /application
        volumes:
            - '.:/application'
            - './docker/nginx/nginx.conf:/etc/nginx/conf.d/default.conf'

    php-fpm:
        build: docker/php-fpm
        working_dir: /application/
        volumes:
            - '.:/application'
            - './docker/php-fpm/php-ini-overrides.ini:/etc/php/8.1/fpm/conf.d/99-overrides.ini'
            - './docker/php-fpm/php-ini-overrides.ini:/etc/php/8.1/cli/conf.d/99-overrides.ini'

docker-compose.override.yml

#
###############################################################################
#                          Generated on phpdocker.io                          #
###############################################################################
version: '3.9'
services:

    mailhog:
        ports:
            - '8026:8025'

    mysql:
        ports:
            - '33061:3306'

    webserver:
        ports:
            - '801:80'

docker/php-fpm/Dockerfile

##
FROM phpdockerio/php:8.1-fpm
WORKDIR "/application"

RUN apt-get update; 
    apt-get -y --no-install-recommends install 
        git 
        php-xdebug 
        php8.1-mysql 
        php8.1-sqlite 
        mysql-client 
        php8.1-redis; 
    apt-get clea  n; 
    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*


#
P粉757640504
P粉757640504

全部回覆(1)
P粉418854048

這原來是由我正在加載的擴(kuò)充功能引起的。在 docker/php-fpm/Dockerfile 中,我安裝了 php-xdebug ,這導(dǎo)致容器載入 PHP8.2

指定8.1版本php8.1-xdebug解決了問題。

感謝 luispabon 對(duì)我在 GitHub 上提出的問題的回應(yīng),他認(rèn)為這一定是圖像的問題。 https://github.com/phpdocker-io/base-images/issues/ 62

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板