Skip to content

Commit

Permalink
Hotfix. ICU incompatible for Alpine 3.19 && 3.20
Browse files Browse the repository at this point in the history
  • Loading branch information
alexanderM91 committed Jul 8, 2024
1 parent f412518 commit 37418a4
Show file tree
Hide file tree
Showing 4 changed files with 69 additions and 46 deletions.
31 changes: 18 additions & 13 deletions alpine/3.19/8.1/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,19 @@ ENV srcRoot /data

RUN mkdir -p ${srcRoot}

# Temporarily use Alpine 3.18 repositories to fetch specific ICU package versions
RUN echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/community" >> /etc/apk/repositories \
&& apk update \
&& apk add --no-cache icu-libs=73.2-r2 icu-dev=73.2-r2 icu-data-full=73.2-r2 \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.19/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.19/community" >> /etc/apk/repositories \
&& apk update

ARG PHP_RUN_DEPS="\
freetype \
gmp \
gnu-libiconv \
icu-libs \
libbz2 \
libc6-compat \
libjpeg-turbo \
Expand All @@ -30,21 +38,19 @@ ARG PHP_RUN_DEPS="\
libxslt \
libzip"


ARG PHP_BUILD_DEPS="\
autoconf \
bzip2-dev \
freetype-dev \
gmp-dev \
icu-dev \
icu-data-full \
libjpeg-turbo-dev \
libpng-dev \
libwebp-dev \
libxml2-dev \
libxpm-dev \
libzip-dev \
postgresql-dev"
postgresql-dev \
build-base"

ARG PHP_EXTENSIONS="\
bcmath \
Expand Down Expand Up @@ -93,24 +99,23 @@ RUN apk update \
shadow \
unzip \
linux-headers \
libstdc++ \
gcompat \
${PHP_RUN_DEPS} \
&& \
apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& \
apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& rm -rf /var/lib/apt/lists/ \
&& \
docker-php-ext-configure gd \
&& docker-php-ext-configure gd \
--disable-gd-jis-conv \
--with-freetype=/usr \
--with-jpeg=/usr \
--with-webp=/usr \
--with-xpm=/usr \
&& docker-php-ext-install -j5 ${PHP_EXTENSIONS} \
&& docker-php-ext-install -j$(nproc) ${PHP_EXTENSIONS} \
&& pecl install -o -f ${PHP_PECL_EXTENSIONS} ${ADDITIONAL_PHP_PECL_EXTENSIONS} \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable ${PHP_EXTENSIONS} ${PHP_PECL_EXTENSIONS} \
&& apk del --no-cache .php-build-deps
&& apk del --no-cache .php-build-deps build-base

# Related to https://github.com/docker-library/php/issues/240
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so
Expand Down
28 changes: 17 additions & 11 deletions alpine/3.19/8.2/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,19 @@ ENV srcRoot /data

RUN mkdir -p ${srcRoot}

# Temporarily use Alpine 3.18 repositories to fetch specific ICU package versions
RUN echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/community" >> /etc/apk/repositories \
&& apk update \
&& apk add --no-cache icu-libs=73.2-r2 icu-dev=73.2-r2 icu-data-full=73.2-r2 \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.19/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.19/community" >> /etc/apk/repositories \
&& apk update

ARG PHP_RUN_DEPS="\
freetype \
gmp \
gnu-libiconv \
icu-libs \
libbz2 \
libc6-compat \
libjpeg-turbo \
Expand All @@ -36,15 +44,14 @@ ARG PHP_BUILD_DEPS="\
bzip2-dev \
freetype-dev \
gmp-dev \
icu-dev \
icu-data-full \
libjpeg-turbo-dev \
libpng-dev \
libwebp-dev \
libxml2-dev \
libxpm-dev \
libzip-dev \
postgresql-dev"
postgresql-dev \
build-base"

ARG PHP_EXTENSIONS="\
bcmath \
Expand Down Expand Up @@ -94,14 +101,13 @@ RUN apk update \
shadow \
unzip \
linux-headers \
libstdc++ \
gcompat \
${PHP_RUN_DEPS} \
&& \
apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& \
apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& rm -rf /var/lib/apt/lists/ \
&& \
docker-php-ext-configure gd \
&& docker-php-ext-configure gd \
--disable-gd-jis-conv \
--with-freetype=/usr \
--with-jpeg=/usr \
Expand All @@ -111,7 +117,7 @@ RUN apk update \
&& pecl install -o -f ${PHP_PECL_EXTENSIONS} ${ADDITIONAL_PHP_PECL_EXTENSIONS} \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable ${PHP_EXTENSIONS} ${PHP_PECL_EXTENSIONS} \
&& apk del --no-cache .php-build-deps
&& apk del --no-cache .php-build-deps build-base

# Related to https://github.com/docker-library/php/issues/240
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so
Expand Down
28 changes: 17 additions & 11 deletions alpine/3.20/8.1/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,19 @@ ENV srcRoot /data

RUN mkdir -p ${srcRoot}

# Temporarily use Alpine 3.18 repositories to fetch specific ICU package versions
RUN echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/community" >> /etc/apk/repositories \
&& apk update \
&& apk add --no-cache icu-libs=73.2-r2 icu-dev=73.2-r2 icu-data-full=73.2-r2 \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.20/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.20/community" >> /etc/apk/repositories \
&& apk update

ARG PHP_RUN_DEPS="\
freetype \
gmp \
gnu-libiconv \
icu-libs \
libbz2 \
libc6-compat \
libjpeg-turbo \
Expand All @@ -36,15 +44,14 @@ ARG PHP_BUILD_DEPS="\
bzip2-dev \
freetype-dev \
gmp-dev \
icu-dev \
icu-data-full \
libjpeg-turbo-dev \
libpng-dev \
libwebp-dev \
libxml2-dev \
libxpm-dev \
libzip-dev \
postgresql-dev"
postgresql-dev \
build-base"

ARG PHP_EXTENSIONS="\
bcmath \
Expand Down Expand Up @@ -93,14 +100,13 @@ RUN apk update \
shadow \
unzip \
linux-headers \
libstdc++ \
gcompat \
${PHP_RUN_DEPS} \
&& \
apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& \
apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& rm -rf /var/lib/apt/lists/ \
&& \
docker-php-ext-configure gd \
&& docker-php-ext-configure gd \
--disable-gd-jis-conv \
--with-freetype=/usr \
--with-jpeg=/usr \
Expand All @@ -110,7 +116,7 @@ RUN apk update \
&& pecl install -o -f ${PHP_PECL_EXTENSIONS} ${ADDITIONAL_PHP_PECL_EXTENSIONS} \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable ${PHP_EXTENSIONS} ${PHP_PECL_EXTENSIONS} \
&& apk del --no-cache .php-build-deps
&& apk del --no-cache .php-build-deps build-base

# Related to https://github.com/docker-library/php/issues/240
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so
Expand Down
28 changes: 17 additions & 11 deletions alpine/3.20/8.2/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,19 @@ ENV srcRoot /data

RUN mkdir -p ${srcRoot}

# Temporarily use Alpine 3.18 repositories to fetch specific ICU package versions
RUN echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.18/community" >> /etc/apk/repositories \
&& apk update \
&& apk add --no-cache icu-libs=73.2-r2 icu-dev=73.2-r2 icu-data-full=73.2-r2 \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.20/main" > /etc/apk/repositories \
&& echo "https://dl-cdn.alpinelinux.org/alpine/v3.20/community" >> /etc/apk/repositories \
&& apk update

ARG PHP_RUN_DEPS="\
freetype \
gmp \
gnu-libiconv \
icu-libs \
libbz2 \
libc6-compat \
libjpeg-turbo \
Expand All @@ -36,15 +44,14 @@ ARG PHP_BUILD_DEPS="\
bzip2-dev \
freetype-dev \
gmp-dev \
icu-dev \
icu-data-full \
libjpeg-turbo-dev \
libpng-dev \
libwebp-dev \
libxml2-dev \
libxpm-dev \
libzip-dev \
postgresql-dev"
postgresql-dev \
build-base"

ARG PHP_EXTENSIONS="\
bcmath \
Expand Down Expand Up @@ -94,14 +101,13 @@ RUN apk update \
shadow \
unzip \
linux-headers \
libstdc++ \
gcompat \
${PHP_RUN_DEPS} \
&& \
apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& \
apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& apk add --no-cache --virtual .php-build-deps ${PHP_BUILD_DEPS} \
&& apk add --no-cache --virtual .graphviz-build-deps ${GRAPHVIZ_BUILD_DEPS} \
&& rm -rf /var/lib/apt/lists/ \
&& \
docker-php-ext-configure gd \
&& docker-php-ext-configure gd \
--disable-gd-jis-conv \
--with-freetype=/usr \
--with-jpeg=/usr \
Expand All @@ -111,7 +117,7 @@ RUN apk update \
&& pecl install -o -f ${PHP_PECL_EXTENSIONS} ${ADDITIONAL_PHP_PECL_EXTENSIONS} \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable ${PHP_EXTENSIONS} ${PHP_PECL_EXTENSIONS} \
&& apk del --no-cache .php-build-deps
&& apk del --no-cache .php-build-deps build-base

# Related to https://github.com/docker-library/php/issues/240
ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so
Expand Down

0 comments on commit 37418a4

Please sign in to comment.