ARG NODE_VERSION=22 # Node.js build stage for building frontend assets FROM node:${NODE_VERSION}-bookworm-slim AS node-builder WORKDIR /app # Install composer and minimal PHP for running Symfony commands COPY --from=composer:latest /usr/bin/composer /usr/bin/composer RUN apt-get update && apt-get install -y --no-install-recommends \ php-cli \ php-xml \ php-mbstring \ unzip \ git \ && apt-get clean && rm -rf /var/lib/apt/lists/* # Copy composer files and install dependencies (needed for Symfony UX assets) COPY composer.json composer.lock symfony.lock ./ RUN composer install --no-scripts --no-autoloader --no-dev --prefer-dist --ignore-platform-reqs # Copy all application files needed for cache warmup and webpack build COPY .env* ./ COPY bin ./bin COPY config ./config COPY src ./src COPY translations ./translations COPY public ./public COPY assets ./assets COPY webpack.config.js ./ # Generate autoloader RUN composer dump-autoload # Create stub translations file for webpack build (real translations will be generated in final image) RUN mkdir -p var/translations COPY <