I am having problems trying to create an image using imagecreatefromjpeg using this Dockerfile to create a container:
FROM php:7.1-apache RUN apt-get update && \ apt-get install -y -qq git \ libjpeg62-turbo-dev \ apt-transport-https \ libfreetype6-dev \ libmcrypt-dev \ libpng12-dev \ libssl-dev \ zip unzip \ nodejs \ npm \ wget \ vim RUN pecl install redis && docker-php-ext-enable redis RUN docker-php-ext-install -j$(nproc) iconv mcrypt zip pdo pdo_mysql gd bcmath COPY ./containers/yii.conf /etc/apache2/sites-available/000-default.conf RUN for mod in rewrite headers; do a2enmod $mod; done && service apache2 restart WORKDIR /var/www/html/
GD was installed correctly (libjpeg too - both appear in php -i and phpinfo() ), but imagecreatefromjpeg doesn't work, and I don't know why.
I also ran apt install libjpeg-dev libpng-dev libfreetype6-dev , trying to force reinstall (or reconfigure), but didn't seem to succeed (yes, I also restarted the container).
root@e8db647c96c4 :/var/www/html
root@e8db647c96c4 :/var/www/html
I tried apt install libgd2-xpm-dev* and apparently this does not solve the problem. ):
I was missing
RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ RUN docker-php-ext-install -j$(nproc) gd
to my Docker file.
Full revised docker file:
FROM php:7.1-apache RUN apt-get update && \ apt-get install -y -qq git \ libjpeg62-turbo-dev \ apt-transport-https \ libfreetype6-dev \ libmcrypt-dev \ libpng12-dev \ libssl-dev \ zip unzip \ nodejs \ npm \ wget \ vim RUN pecl install redis && docker-php-ext-enable redis RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ RUN docker-php-ext-install -j$(nproc) iconv mcrypt zip pdo pdo_mysql gd bcmath COPY ./containers/yii.conf /etc/apache2/sites-available/000-default.conf RUN for mod in rewrite headers; do a2enmod $mod; done && service apache2 restart WORKDIR /var/www/html/
source share