From a2eca74469e87c1f3aa30f876d7f002a1050c6b6 Mon Sep 17 00:00:00 2001 From: Simon Linsner Date: Sun, 7 Jun 2026 22:40:35 +0200 Subject: [PATCH 1/2] feat: added support for Podman as container engine --- .gitattributes | 1 + Podmanfile | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 Podmanfile diff --git a/.gitattributes b/.gitattributes index 042a8fae8..ecff6abb4 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,4 +1,5 @@ # Treat SVGs like images, and not like text. *.svg binary Dockerfile text eol=lf +Podmanfile text eol=lf *.sh eol=lf diff --git a/Podmanfile b/Podmanfile new file mode 100644 index 000000000..cfe3236c2 --- /dev/null +++ b/Podmanfile @@ -0,0 +1,39 @@ +# syntax=docker/dockerfile:1 + +ARG BUILDER_CONFIGURATION="release" +FROM docker.io/library/php:7.4-apache@sha256:c9d7e608f73832673479770d66aacc8100011ec751d1905ff63fae3fe2e0ca6d AS composer-builder + +# Install Zip to use composer +RUN apt-get update && apt-get install -y \ + zlib1g-dev \ + libzip-dev \ + unzip +RUN docker-php-ext-install zip + +# Install and update composer +COPY --from=docker.io/library/composer /usr/bin/composer /usr/bin/composer +RUN composer self-update + +WORKDIR /composer +COPY composer.* /composer/ +# Consume the build argment +ARG BUILDER_CONFIGURATION +RUN if [ "$BUILDER_CONFIGURATION" = "debug" ]; then \ + # composer install --dev deprecated + COMPOSER_NO_DEV=0 composer install ; \ + else \ + COMPOSER_NO_DEV=1 composer install ; \ + fi + +USER www-data + +# Site +FROM docker.io/library/php:7.4-apache@sha256:c9d7e608f73832673479770d66aacc8100011ec751d1905ff63fae3fe2e0ca6d +COPY resources/keyman-site.conf /etc/apache2/conf-available/ +RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini +RUN chown -R www-data:www-data /var/www/html/ + +COPY --from=composer-builder /composer/vendor /var/www/vendor +RUN a2enmod rewrite headers; a2enconf keyman-site + +# RUN echo LogLevel alert rewrite:trace6 >> /etc/apache2/apache2.conf From 251e0be3382d724f24643c5fdda9eb71a942ca75 Mon Sep 17 00:00:00 2001 From: Simon Linsner Date: Sun, 21 Jun 2026 21:57:05 +0200 Subject: [PATCH 2/2] fixed suggestions --- Dockerfile | 1 + Podmanfile | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 26194db8a..c76c6e25b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,5 @@ # syntax=docker/dockerfile:1 +# Please keep the content of this file in sync with Podmanfile. ARG BUILDER_CONFIGURATION="release" FROM php:7.4-apache@sha256:c9d7e608f73832673479770d66aacc8100011ec751d1905ff63fae3fe2e0ca6d AS composer-builder diff --git a/Podmanfile b/Podmanfile index cfe3236c2..3ce30ad8e 100644 --- a/Podmanfile +++ b/Podmanfile @@ -1,4 +1,6 @@ # syntax=docker/dockerfile:1 +# Please keep the content of this file in sync with Dockerfile. +# Take care to have here the full path to the images. Podman cannot handle Docker's short form. ARG BUILDER_CONFIGURATION="release" FROM docker.io/library/php:7.4-apache@sha256:c9d7e608f73832673479770d66aacc8100011ec751d1905ff63fae3fe2e0ca6d AS composer-builder @@ -14,6 +16,7 @@ RUN docker-php-ext-install zip COPY --from=docker.io/library/composer /usr/bin/composer /usr/bin/composer RUN composer self-update +# Do not switch the user! Podman needs root to install composer. WORKDIR /composer COPY composer.* /composer/ # Consume the build argment @@ -25,8 +28,6 @@ RUN if [ "$BUILDER_CONFIGURATION" = "debug" ]; then \ COMPOSER_NO_DEV=1 composer install ; \ fi -USER www-data - # Site FROM docker.io/library/php:7.4-apache@sha256:c9d7e608f73832673479770d66aacc8100011ec751d1905ff63fae3fe2e0ca6d COPY resources/keyman-site.conf /etc/apache2/conf-available/