fedi-feed-router/docker/build/Dockerfile.ci

25 lines
838 B
Text

# Image for CI: PHP and Composer only, no runtime server or frontend toolchain.
# Tests run against sqlite in memory (see .env.testing), so no database client
# or cache extension is needed.
#
# Extensions here are the ext-* requirements from composer.lock that php:alpine
# does not already bundle. Regenerate that list before changing this file.
FROM php:8.3-alpine
COPY --from=mlocati/php-extension-installer:2 /usr/bin/install-php-extensions /usr/local/bin/
RUN install-php-extensions \
pdo_sqlite \
mbstring \
dom \
xml \
fileinfo \
iconv \
pcntl \
posix
# nodejs is not used by the app's tests; the Forgejo/GitHub JavaScript actions
# (checkout, cache) are executed with it inside this container.
RUN apk add --no-cache git unzip nodejs
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer