【问题标题】:Unable to enable GD with JPEG support in PHP8 container running in Docker无法在 Docker 中运行的 PHP8 容器中启用具有 JPEG 支持的 GD
【发布时间】:2021-10-13 13:06:01
【问题描述】:

尝试了很多方法,但仍然无法在 Docker 中运行的 PHP8 容器中通过 JPEG 支持启用 GD。这是我的 Docker 文件的片段:

FROM php:8.0.10-apache

RUN apt-get -y update && apt-get -y install \
apt-utils \
vim \
rsync \
curl \
openssl \
openssh-server \
mariadb-client \
git \
zlib1g-dev \
libicu-dev \
libfreetype6-dev \
libjpeg62-turbo-dev \
libzip-dev \
libpng-dev \
g++ \
zip \
unzip \
gnupg \
gnupg2 \
unixodbc-dev

RUN docker-php-ext-configure gd --enable-gd --with-freetype --with-jpeg
RUN docker-php-ext-install gd 

如您所见,缺少 JPEG 支持。我在这里想念什么?谢谢!

【问题讨论】:

标签: php docker gd php-8


【解决方案1】:

我使用的是 Nginx(不是像你这样的 Apache),但遇到了与 GD 类似的问题。我使用以下几行代码让 GD 与 jpg、png 和 webp 一起运行

FROM php:8.0-fpm-alpine

# Install dependencies for GD and install GD with support for jpeg, png webp and freetype
# Info about installing GD in PHP https://www.php.net/manual/en/image.installation.php
RUN apk add --no-cache \
        libjpeg-turbo-dev \
        libpng-dev \
        libwebp-dev \
        freetype-dev

# As of PHP 7.4 we don't need to add --with-png
RUN docker-php-ext-configure gd --with-jpeg --with-webp --with-freetype
RUN docker-php-ext-install gd

查看您的RUN apt-get 声明,我注意到您正在使用另一个libjpeg 库libjpeg62-turbo-dev \。你能检查一下这是否是正确的版本吗? 和/或尝试将名称更改为 libjpeg-turbo-dev \名称中不带 62)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-08-08
    • 1970-01-01
    • 1970-01-01
    • 2011-06-06
    • 2019-01-04
    • 1970-01-01
    • 2021-10-26
    • 2020-06-10
    相关资源
    最近更新 更多