From 05b833b3994ada225fad9895423920529ecb3f31 Mon Sep 17 00:00:00 2001 From: Alejandro Celaya Date: Mon, 22 Dec 2025 12:20:06 +0100 Subject: [PATCH 1/3] Install xdebug with pie in dev docker images --- data/infra/frankenphp.Dockerfile | 8 +++++--- data/infra/php.Dockerfile | 8 +++++--- data/infra/roadrunner.Dockerfile | 8 +++++--- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/data/infra/frankenphp.Dockerfile b/data/infra/frankenphp.Dockerfile index 3670ced3..0d814406 100644 --- a/data/infra/frankenphp.Dockerfile +++ b/data/infra/frankenphp.Dockerfile @@ -27,18 +27,20 @@ RUN docker-php-ext-install zip RUN apk add --no-cache postgresql-dev RUN docker-php-ext-install pdo_pgsql +COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ + pie install xdebug/xdebug && \ apk del .phpize-deps RUN docker-php-ext-install bcmath -# Install xdebug and sqlsrv driver +# Install sqlsrv driver RUN apk add --update linux-headers && \ wget https://download.microsoft.com/download/${MS_ODBC_DOWNLOAD}/msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ apk add --allow-untrusted msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS unixodbc-dev && \ - pecl install pdo_sqlsrv-${PDO_SQLSRV_VERSION} xdebug && \ - docker-php-ext-enable pdo_sqlsrv xdebug && \ + pecl install pdo_sqlsrv-${PDO_SQLSRV_VERSION} && \ + docker-php-ext-enable pdo_sqlsrv && \ apk del .phpize-deps && \ rm msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk diff --git a/data/infra/php.Dockerfile b/data/infra/php.Dockerfile index fc71471c..16f9bcef 100644 --- a/data/infra/php.Dockerfile +++ b/data/infra/php.Dockerfile @@ -28,8 +28,10 @@ RUN docker-php-ext-install zip RUN apk add --no-cache postgresql-dev RUN docker-php-ext-install pdo_pgsql +COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ + pie install xdebug/xdebug && \ apk del .phpize-deps RUN docker-php-ext-install bcmath @@ -43,13 +45,13 @@ RUN mkdir -p /usr/src/php/ext/apcu \ && rm /usr/local/etc/php/conf.d/docker-php-ext-apcu.ini \ && echo extension=apcu.so > /usr/local/etc/php/conf.d/20-php-ext-apcu.ini -# Install xdebug and sqlsrv driver +# Install sqlsrv driver RUN apk add --update linux-headers && \ wget https://download.microsoft.com/download/${MS_ODBC_DOWNLOAD}/msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ apk add --allow-untrusted msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS unixodbc-dev && \ - pecl install pdo_sqlsrv-${PDO_SQLSRV_VERSION} xdebug && \ - docker-php-ext-enable pdo_sqlsrv xdebug && \ + pecl install pdo_sqlsrv-${PDO_SQLSRV_VERSION} && \ + docker-php-ext-enable pdo_sqlsrv && \ apk del .phpize-deps && \ rm msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk diff --git a/data/infra/roadrunner.Dockerfile b/data/infra/roadrunner.Dockerfile index 23adc1f7..361a71da 100644 --- a/data/infra/roadrunner.Dockerfile +++ b/data/infra/roadrunner.Dockerfile @@ -27,18 +27,20 @@ RUN docker-php-ext-install zip RUN apk add --no-cache postgresql-dev RUN docker-php-ext-install pdo_pgsql +COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ + pie install xdebug/xdebug && \ apk del .phpize-deps RUN docker-php-ext-install bcmath -# Install xdebug and sqlsrv driver +# Install sqlsrv driver RUN apk add --update linux-headers && \ wget https://download.microsoft.com/download/${MS_ODBC_DOWNLOAD}/msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ apk add --allow-untrusted msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS unixodbc-dev && \ - pecl install pdo_sqlsrv-${PDO_SQLSRV_VERSION} xdebug && \ - docker-php-ext-enable pdo_sqlsrv xdebug && \ + pecl install pdo_sqlsrv-${PDO_SQLSRV_VERSION} && \ + docker-php-ext-enable pdo_sqlsrv && \ apk del .phpize-deps && \ rm msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk From 18ac39ad9c104197fad5459fbed6e5a038f8abc5 Mon Sep 17 00:00:00 2001 From: Alejandro Celaya Date: Mon, 22 Dec 2025 12:27:32 +0100 Subject: [PATCH 2/3] Install APCU via pie in php dev docker image --- Dockerfile | 4 ++-- data/infra/php.Dockerfile | 11 +---------- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/Dockerfile b/Dockerfile index d741d15c..b75ec607 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,12 +15,12 @@ WORKDIR /etc/shlink # Install required PHP extensions RUN \ - # Temp install dev dependencies needed to compile the extensions + # Temp install dev dependencies needed to compile the extensions \ apk add --no-cache --virtual .dev-deps sqlite-dev postgresql-dev icu-dev libzip-dev zlib-dev linux-headers && \ docker-php-ext-install -j"$(nproc)" pdo_mysql pdo_pgsql intl calendar sockets bcmath zip && \ apk add --no-cache sqlite-libs && \ docker-php-ext-install -j"$(nproc)" pdo_sqlite && \ - # Remove temp dev extensions, and install prod equivalents that are required at runtime + # Remove temp dev extensions, and install prod equivalents that are required at runtime \ apk del .dev-deps && \ apk add --no-cache postgresql icu libzip libpng diff --git a/data/infra/php.Dockerfile b/data/infra/php.Dockerfile index 16f9bcef..162ca3ab 100644 --- a/data/infra/php.Dockerfile +++ b/data/infra/php.Dockerfile @@ -32,19 +32,10 @@ COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ pie install xdebug/xdebug && \ + pie install apcu/apcu && \ apk del .phpize-deps RUN docker-php-ext-install bcmath -# Install APCu extension -ADD https://pecl.php.net/get/apcu-$APCU_VERSION.tgz /tmp/apcu.tar.gz -RUN mkdir -p /usr/src/php/ext/apcu \ - && tar xf /tmp/apcu.tar.gz -C /usr/src/php/ext/apcu --strip-components=1 \ - && docker-php-ext-configure apcu \ - && docker-php-ext-install apcu \ - && rm /tmp/apcu.tar.gz \ - && rm /usr/local/etc/php/conf.d/docker-php-ext-apcu.ini \ - && echo extension=apcu.so > /usr/local/etc/php/conf.d/20-php-ext-apcu.ini - # Install sqlsrv driver RUN apk add --update linux-headers && \ wget https://download.microsoft.com/download/${MS_ODBC_DOWNLOAD}/msodbcsql${MS_ODBC_SQL_VERSION}-1_amd64.apk && \ From 6eb94194a3f81bcd457dca6d1b5f4d05f568c256 Mon Sep 17 00:00:00 2001 From: Alejandro Celaya Date: Mon, 22 Dec 2025 12:41:41 +0100 Subject: [PATCH 3/3] Install zip extension with pie --- data/infra/frankenphp.Dockerfile | 7 +++---- data/infra/php.Dockerfile | 7 +++---- data/infra/roadrunner.Dockerfile | 7 +++---- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/data/infra/frankenphp.Dockerfile b/data/infra/frankenphp.Dockerfile index 0d814406..ac27d1a2 100644 --- a/data/infra/frankenphp.Dockerfile +++ b/data/infra/frankenphp.Dockerfile @@ -21,16 +21,15 @@ RUN docker-php-ext-install pdo_sqlite RUN apk add --no-cache icu-dev RUN docker-php-ext-install intl -RUN apk add --no-cache libzip-dev zlib-dev -RUN docker-php-ext-install zip - RUN apk add --no-cache postgresql-dev RUN docker-php-ext-install pdo_pgsql COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie -RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ +RUN apk add --no-cache libzip-dev zlib-dev && \ + apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ pie install xdebug/xdebug && \ + pie install pecl/zip && \ apk del .phpize-deps RUN docker-php-ext-install bcmath diff --git a/data/infra/php.Dockerfile b/data/infra/php.Dockerfile index 162ca3ab..652e1ace 100644 --- a/data/infra/php.Dockerfile +++ b/data/infra/php.Dockerfile @@ -22,16 +22,15 @@ RUN docker-php-ext-install pdo_sqlite RUN apk add --no-cache icu-dev RUN docker-php-ext-install intl -RUN apk add --no-cache libzip-dev zlib-dev -RUN docker-php-ext-install zip - RUN apk add --no-cache postgresql-dev RUN docker-php-ext-install pdo_pgsql COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie -RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ +RUN apk add --no-cache libzip-dev zlib-dev && \ + apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ pie install xdebug/xdebug && \ + pie install pecl/zip && \ pie install apcu/apcu && \ apk del .phpize-deps RUN docker-php-ext-install bcmath diff --git a/data/infra/roadrunner.Dockerfile b/data/infra/roadrunner.Dockerfile index 361a71da..8ef7e969 100644 --- a/data/infra/roadrunner.Dockerfile +++ b/data/infra/roadrunner.Dockerfile @@ -21,16 +21,15 @@ RUN docker-php-ext-install pdo_sqlite RUN apk add --no-cache icu-dev RUN docker-php-ext-install intl -RUN apk add --no-cache libzip-dev zlib-dev -RUN docker-php-ext-install zip - RUN apk add --no-cache postgresql-dev RUN docker-php-ext-install pdo_pgsql COPY --from=ghcr.io/php/pie:bin /pie /usr/bin/pie -RUN apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ +RUN apk add --no-cache libzip-dev zlib-dev && \ + apk add --no-cache --virtual .phpize-deps $PHPIZE_DEPS linux-headers && \ docker-php-ext-install sockets && \ pie install xdebug/xdebug && \ + pie install pecl/zip && \ apk del .phpize-deps RUN docker-php-ext-install bcmath