Pārlūkot izejas kodu

Merge commit 'fc2dc5125d60280066e368417534bfe762068156' into newdesign

Stefan Stidl 2 nedēļas atpakaļ
vecāks
revīzija
b1a5cea12c
2 mainītis faili ar 26 papildinājumiem un 14 dzēšanām
  1. 4 0
      .github/workflows/docker-publish.yml
  2. 22 14
      Dockerfile.alpine

+ 4 - 0
.github/workflows/docker-publish.yml

@@ -57,6 +57,10 @@ jobs:
             curl -L https://ipinfo.io/data/free/country_asn.mmdb?token=${{ secrets.IPINFO_APIKEY }} -o backend/country_asn.mmdb
           fi
 
+      # Set up QEMU for multi-arch builds
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@v3
+
       # Set up BuildKit Docker container builder to be able to build
       # multi-platform images and export cache
       # https://github.com/docker/setup-buildx-action

+ 22 - 14
Dockerfile.alpine

@@ -1,19 +1,27 @@
-FROM php:8-alpine
-RUN apk add --quiet --no-cache \
+FROM php:8.3-alpine3.19
+
+# Use the mlocati helper to install PHP extensions in a platform-agnostic way.
+ADD --chmod=0755 https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
+
+# Install runtime packages and let the helper install/compile PHP extensions
+RUN apk add --no-cache \
     bash \
     apache2 \
-    php-apache2 \
-    php-ctype \
-    php-phar \
-    php-gd \
-    php-openssl \
-    php-pdo \
-    php-pdo_mysql \
-    php-pdo_pgsql \
-    php-pdo_sqlite \
-    php-pgsql \
-    php-session \
-    php-sqlite3
+    wget \
+    curl \
+    && apk add --no-cache --virtual .build-deps \
+        build-base \
+        autoconf \
+        libpng-dev \
+        libjpeg-turbo-dev \
+        libwebp-dev \
+        freetype-dev \
+        libxml2-dev \
+        mariadb-connector-c-dev \
+        postgresql-dev \
+        sqlite-dev \
+    && install-php-extensions iconv gd pdo pdo_mysql pdo_pgsql pdo_sqlite pgsql zip \
+    && apk del .build-deps
 
 # Note: PHP extensions are provided via Alpine `php-*` packages above.
 # The docker-php-extension-installer is redundant when using those packages,