Docker alpine, imagecreatefromjpeg doesn't work, imagecreatefrompng does

57 Views Asked by At

I have the following Dockerfile:

FROM php:8-fpm-alpine
RUN docker-php-ext-install pdo pdo_mysql    
RUN apk update \
    && apk add --no-cache --update linux-headers ${PHPIZE_DEPS} \
    && apk add libzip-dev \
       freetype-dev \
       libjpeg-turbo-dev \
       jpeg-dev \
       libpng-dev \
       icu-dev \
    && docker-php-ext-install \
       exif \
       mysqli \
       pdo \
       pdo_mysql \
    && docker-php-ext-configure gd --with-freetype --with-jpeg \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-ext-install opcache


# Install PHP extensions
RUN docker-php-ext-install pdo_mysql
RUN docker-php-ext-install mysqli
RUN docker-php-ext-install zip
RUN docker-php-ext-install gd
RUN docker-php-ext-configure intl \
    && docker-php-ext-install intl

When I run phpinfo() I get:

GD Support  enabled
GD Version  bundled (2.1.0 compatible)
GIF Read Support    enabled
GIF Create Support  enabled
PNG Support     enabled
libPNG Version  1.6.40
WBMP Support    enabled
XBM Support     enabled
BMP Support     enabled
TGA Read Support    enabled 

However, when I run the following piece of php code to check the imagecreatefromjpeg and imagecreatefrompng functions I get function imagecreatefromjpeg does not exist, function imagecreatefrompng exists, indicating that for some reason jpeg images are not supported. Why could that be?

if(function_exists('imagecreatefromjpeg')) {
  echo "function imagecreatefromjpeg exists<br />";
}else {
  echo "function imagecreatefromjpeg does not exist<br />";
}

if(function_exists('imagecreatefrompng')) {
  echo "function imagecreatefrompng exists<br />";
}else {
  echo "function imagecreatefrompng does not exist<br />";
}
0

There are 0 best solutions below