PHP 7.4 установка GD с поддержкой JPEG формата

Автор: Eugeny Nosenko
Дата публикации: 2022-12-06 14:02:03   1546


PHP 7.4 установка GD с поддержкой JPEG формата

В процессе работы, столкнулся с тем, что по умолчанию в контейнере, PHP не поддерживает JPEG.

При попытке изменить размер вылетала ошибка

imagecreatefromstring(): no jpeg support in this php build

Проверяем. JPEG не поддерживается.

php -r 'print_r(gd_info());'
Array
(
    [GD Version] => bundled (2.1.0 compatible)
    [FreeType Support] => 
    [GIF Read Support] => 1
    [GIF Create Support] => 1
    [JPEG Support] => 
    [PNG Support] => 1
    [WBMP Support] => 1
    [XPM Support] => 
    [XBM Support] => 1
    [WebP Support] => 
    [BMP Support] => 1
    [TGA Read Support] => 1
    [JIS-mapped Japanese Font Support] => 
)

Сразу зашел на страницу на докерхабе https://hub.docker.com/_/php

Там нашел пример

FROM php:7.4-fpm
RUN apt-get update && apt-get install -y \
		libfreetype6-dev \
		libjpeg62-turbo-dev \
		libpng-dev \
	&& docker-php-ext-configure gd --with-freetype --with-jpeg \
	&& docker-php-ext-install -j$(nproc) gd

Буду краток. Не помогло)

После небольшого гугления выяснилось, что нужно это выполнять отдельно.

RUN docker-php-ext-configure gd --enable-gd --with-freetype --with-jpeg --with-webp
RUN docker-php-ext-install -j$(nproc) gd

И тогда все работает как надо. Ссылка на коммит

Поправил так же для PHP 8.1. Посмотреть можно здесь https://github.com/imjonos/laravel-docker

Cчастливой разработки </>



Оставить комментарий:
Имя:
Комментарий: