diff --git a/Dockerfile b/Dockerfile index 6c425271..4625df3a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,12 +4,12 @@ FROM php-base AS common WORKDIR /app RUN apt-get update && \ - apt-get -y --no-install-recommends install \ - mailcap \ - libcap2-bin \ - && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* + apt-get -y --no-install-recommends install \ + mailcap \ + libcap2-bin \ + && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* RUN set -eux; \ mkdir -p \ @@ -54,18 +54,18 @@ ENV PATH /usr/local/go/bin:$PATH # This is required to link the FrankenPHP binary to the PHP binary RUN apt-get update && \ - apt-get -y --no-install-recommends install \ - libargon2-dev \ - libcurl4-openssl-dev \ - libonig-dev \ - libreadline-dev \ - libsodium-dev \ - libsqlite3-dev \ - libssl-dev \ - libxml2-dev \ - zlib1g-dev \ - && \ - apt-get clean + apt-get -y --no-install-recommends install \ + libargon2-dev \ + libcurl4-openssl-dev \ + libonig-dev \ + libreadline-dev \ + libsodium-dev \ + libsqlite3-dev \ + libssl-dev \ + libxml2-dev \ + zlib1g-dev \ + && \ + apt-get clean WORKDIR /go/src/app @@ -89,9 +89,9 @@ ENV CGO_LDFLAGS="-lssl -lcrypto -lreadline -largon2 -lcurl -lonig -lz $PHP_LDFLA WORKDIR /go/src/app/caddy/frankenphp RUN GOBIN=/usr/local/bin go install -ldflags "-w -s -X 'github.com/caddyserver/caddy/v2.CustomVersion=FrankenPHP $FRANKENPHP_VERSION PHP $PHP_VERSION Caddy'" && \ - setcap cap_net_bind_service=+ep /usr/local/bin/frankenphp && \ - cp Caddyfile /etc/caddy/Caddyfile && \ - frankenphp version + setcap cap_net_bind_service=+ep /usr/local/bin/frankenphp && \ + cp Caddyfile /etc/caddy/Caddyfile && \ + frankenphp version WORKDIR /go/src/app diff --git a/dev-alpine.Dockerfile b/dev-alpine.Dockerfile index 196d6755..fc058d11 100644 --- a/dev-alpine.Dockerfile +++ b/dev-alpine.Dockerfile @@ -3,57 +3,57 @@ FROM golang:1.21-alpine ENV CFLAGS="-ggdb3" ENV PHPIZE_DEPS \ - autoconf \ - dpkg-dev \ - file \ - g++ \ - gcc \ - libc-dev \ - make \ - pkgconfig \ - re2c + autoconf \ + dpkg-dev \ + file \ + g++ \ + gcc \ + libc-dev \ + make \ + pkgconfig \ + re2c RUN apk add --no-cache \ - $PHPIZE_DEPS \ - argon2-dev \ - curl-dev \ - oniguruma-dev \ - readline-dev \ - libsodium-dev \ - sqlite-dev \ - openssl-dev \ - libxml2-dev \ - zlib-dev \ - bison \ - nss-tools \ - # Dev tools \ - git \ - clang \ - llvm \ - gdb \ - valgrind \ - neovim \ - zsh \ - libtool && \ - echo 'set auto-load safe-path /' > /root/.gdbinit + $PHPIZE_DEPS \ + argon2-dev \ + curl-dev \ + oniguruma-dev \ + readline-dev \ + libsodium-dev \ + sqlite-dev \ + openssl-dev \ + libxml2-dev \ + zlib-dev \ + bison \ + nss-tools \ + # Dev tools \ + git \ + clang \ + llvm \ + gdb \ + valgrind \ + neovim \ + zsh \ + libtool && \ + echo 'set auto-load safe-path /' > /root/.gdbinit WORKDIR /usr/local/src/php RUN git clone --branch=PHP-8.3 https://github.com/php/php-src.git . && \ - # --enable-embed is only necessary to generate libphp.so, we don't use this SAPI directly - ./buildconf --force && \ - ./configure \ - --enable-embed \ - --enable-zts \ - --disable-zend-signals \ - --enable-zend-max-execution-timers \ - --enable-debug && \ - make -j"$(nproc)" && \ - make install && \ - ldconfig /etc/ld.so.conf.d && \ - cp php.ini-development /usr/local/lib/php.ini && \ - echo "zend_extension=opcache.so" >> /usr/local/lib/php.ini && \ - echo "opcache.enable=1" >> /usr/local/lib/php.ini && \ - php --version + # --enable-embed is only necessary to generate libphp.so, we don't use this SAPI directly + ./buildconf --force && \ + ./configure \ + --enable-embed \ + --enable-zts \ + --disable-zend-signals \ + --enable-zend-max-execution-timers \ + --enable-debug && \ + make -j"$(nproc)" && \ + make install && \ + ldconfig /etc/ld.so.conf.d && \ + cp php.ini-development /usr/local/lib/php.ini && \ + echo "zend_extension=opcache.so" >> /usr/local/lib/php.ini && \ + echo "opcache.enable=1" >> /usr/local/lib/php.ini && \ + php --version WORKDIR /go/src/app COPY . . diff --git a/dev.Dockerfile b/dev.Dockerfile index 732224e5..3c07a32c 100644 --- a/dev.Dockerfile +++ b/dev.Dockerfile @@ -3,62 +3,62 @@ FROM golang:1.21 ENV CFLAGS="-ggdb3" ENV PHPIZE_DEPS \ - autoconf \ - dpkg-dev \ - file \ - g++ \ - gcc \ - libc-dev \ - make \ - pkg-config \ - re2c + autoconf \ + dpkg-dev \ + file \ + g++ \ + gcc \ + libc-dev \ + make \ + pkg-config \ + re2c # hadolint ignore=DL3009 RUN apt-get update && \ - apt-get -y --no-install-recommends install \ - $PHPIZE_DEPS \ - libargon2-dev \ - libcurl4-openssl-dev \ - libonig-dev \ - libreadline-dev \ - libsodium-dev \ - libsqlite3-dev \ - libssl-dev \ - libxml2-dev \ - zlib1g-dev \ - bison \ - libnss3-tools \ - # Dev tools \ - git \ - clang \ - llvm \ - gdb \ - valgrind \ - neovim \ - zsh \ - libtool-bin && \ - echo 'set auto-load safe-path /' > /root/.gdbinit && \ - echo '* soft core unlimited' >> /etc/security/limits.conf \ - && \ - apt-get clean + apt-get -y --no-install-recommends install \ + $PHPIZE_DEPS \ + libargon2-dev \ + libcurl4-openssl-dev \ + libonig-dev \ + libreadline-dev \ + libsodium-dev \ + libsqlite3-dev \ + libssl-dev \ + libxml2-dev \ + zlib1g-dev \ + bison \ + libnss3-tools \ + # Dev tools \ + git \ + clang \ + llvm \ + gdb \ + valgrind \ + neovim \ + zsh \ + libtool-bin && \ + echo 'set auto-load safe-path /' > /root/.gdbinit && \ + echo '* soft core unlimited' >> /etc/security/limits.conf \ + && \ + apt-get clean WORKDIR /usr/local/src/php RUN git clone --branch=PHP-8.3 https://github.com/php/php-src.git . && \ - # --enable-embed is only necessary to generate libphp.so, we don't use this SAPI directly - ./buildconf --force && \ - ./configure \ - --enable-embed \ - --enable-zts \ - --disable-zend-signals \ - --enable-zend-max-execution-timers \ - --enable-debug && \ - make -j"$(nproc)" && \ - make install && \ - ldconfig && \ - cp php.ini-development /usr/local/lib/php.ini && \ - echo "zend_extension=opcache.so" >> /usr/local/lib/php.ini && \ - echo "opcache.enable=1" >> /usr/local/lib/php.ini && \ - php --version + # --enable-embed is only necessary to generate libphp.so, we don't use this SAPI directly + ./buildconf --force && \ + ./configure \ + --enable-embed \ + --enable-zts \ + --disable-zend-signals \ + --enable-zend-max-execution-timers \ + --enable-debug && \ + make -j"$(nproc)" && \ + make install && \ + ldconfig && \ + cp php.ini-development /usr/local/lib/php.ini && \ + echo "zend_extension=opcache.so" >> /usr/local/lib/php.ini && \ + echo "opcache.enable=1" >> /usr/local/lib/php.ini && \ + php --version WORKDIR /go/src/app COPY . . diff --git a/static-builder.Dockerfile b/static-builder.Dockerfile index b6e2bec4..2093c86c 100644 --- a/static-builder.Dockerfile +++ b/static-builder.Dockerfile @@ -25,49 +25,49 @@ LABEL org.opencontainers.image.licenses=MIT LABEL org.opencontainers.image.vendor="Kévin Dunglas" RUN apk update; \ - apk add --no-cache \ - autoconf \ - automake \ - bash \ - binutils \ - bison \ - build-base \ - cmake \ - curl \ - file \ - flex \ - g++ \ - gcc \ - git \ - jq \ - libgcc \ - libstdc++ \ - libtool \ - linux-headers \ - m4 \ - make \ - pkgconfig \ - wget \ - xz ; \ - apk add --no-cache \ - --repository=https://dl-cdn.alpinelinux.org/alpine/edge/main \ - --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community \ - php83 \ - php83-common \ - php83-ctype \ - php83-curl \ - php83-dom \ - php83-mbstring \ - php83-openssl \ - php83-pcntl \ - php83-phar \ - php83-posix \ - php83-session \ - php83-sodium \ - php83-tokenizer \ - php83-xml \ - php83-xmlwriter; \ - ln -sf /usr/bin/php83 /usr/bin/php + apk add --no-cache \ + autoconf \ + automake \ + bash \ + binutils \ + bison \ + build-base \ + cmake \ + curl \ + file \ + flex \ + g++ \ + gcc \ + git \ + jq \ + libgcc \ + libstdc++ \ + libtool \ + linux-headers \ + m4 \ + make \ + pkgconfig \ + wget \ + xz ; \ + apk add --no-cache \ + --repository=https://dl-cdn.alpinelinux.org/alpine/edge/main \ + --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community \ + php83 \ + php83-common \ + php83-ctype \ + php83-curl \ + php83-dom \ + php83-mbstring \ + php83-openssl \ + php83-pcntl \ + php83-phar \ + php83-posix \ + php83-session \ + php83-sodium \ + php83-tokenizer \ + php83-xml \ + php83-xmlwriter; \ + ln -sf /usr/bin/php83 /usr/bin/php # https://getcomposer.org/doc/03-cli.md#composer-allow-superuser ENV COMPOSER_ALLOW_SUPERUSER=1