亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

由于 php 擴展,Docker 與 laravel 失敗

由于 php 擴展,Docker 與 laravel 失敗

PHP
HUX布斯 2023-09-22 15:30:50
Laravel在服務器上運行appache。docker-compose up --build使用以下內容構建圖像后DockerfileFROM php:7.3-apache-stretch RUN apt-get update -y && apt-get install -y libpng-dev RUN docker-php-ext-install pdo pdo_mysql gd FROM composer:1.9.0 as build WORKDIR /app COPY . /app RUN composer global require hirak/prestissimo && composer install我收到錯誤消息:phpoffice/phpspreadsheet 1.13.0 requires ext-gd * -> the requested PHP extension gd is missing from your system.命令運行時會發生這種情況composer install。正如你所看到的,我實際上是從 php 安裝 gd,所以它不應該給我這個錯誤消息。你知道我該如何解決嗎?
查看完整描述

2 回答

?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

發生這種情況是因為您正在使用多階段構建,而您的composer第二階段與之前使用容器的構建無關PHP。多階段的主要用例是生成一些可供以后使用的有用工件。


所以我的建議是從composer圖像復制作曲家文件,然后將其放置在php容器中的某個位置。


我會給你我的解決方案,它對我來說非常適合laravel/symfony等。


FROM php:7.4.4-fpm


# We copy composer from it's original image to our php container to use it later.

COPY --from=composer:1.9 /usr/bin/composer /usr/bin/composer


WORKDIR /var/www


ARG USER_ID


RUN useradd -s /bin/bash -d /home/user/ -m -G sudo,www-data user -u $USER_ID


RUN apt update && apt install -y zip unzip wget zlib1g-dev libicu-dev


RUN docker-php-ext-install pdo_mysql intl opcache gd


USER user


RUN wget https://get.symfony.com/cli/installer -O - | bash


ENV PATH="/home/user/.symfony/bin:${PATH}"


COPY php.ini /usr/local/etc/php


# You can also run here composer install, depends on your use case


查看完整回答
反對 回復 2023-09-22
?
繁華開滿天機

TA貢獻1816條經驗 獲得超4個贊

您可以更改您的泊塢窗圖像。例如嘗試這個:


FROM richarvey/nginx-php-fpm

WORKDIR /app

RUN php ./artisan config:cache && composer install


查看完整回答
反對 回復 2023-09-22
  • 2 回答
  • 0 關注
  • 157 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號