8

Tried many ways, but still unable to get GD enabled with JPEG support in PHP8 container running in Docker. Here's the fragment of my Docker file:

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 Support is missing

As you see the JPEG Support is missing. What am I missing here? Thanks!

Aidas
  • 1,213
  • 2
  • 10
  • 16
  • Does this answer your question? [Docker Alpine - Enable GD JPEG support](https://stackoverflow.com/questions/48169044/docker-alpine-enable-gd-jpeg-support) – madflow Oct 13 '21 at 16:01
  • Unfortunately no... I'm aware though that the way to enable GD with jpeg support has changed as of PHP7.3 – Aidas Oct 13 '21 at 18:19

2 Answers2

4

I'm using Nginx (not Apache like you) but ran into a similar issue with GD. I got GD running with jpg, png and webp by using the following lines:

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

Looking at your RUN apt-get statement, I noticed that you are using another libjpeg library: libjpeg62-turbo-dev \. Could you check if that is the correct version? And/or try to change the name to libjpeg-turbo-dev \ (without the 62 in the name).

pe7er
  • 336
  • 2
  • 8
1
FROM php:8.1-fpm

RUN apt-get update && apt-get install -y \
    libjpeg-dev \
    libjpeg62-turbo-dev \
    libpng-dev 

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

RUN docker-php-ext-install -j$(nproc) gd
user68323
  • 19
  • 3