FROM node:24.22.2-alpine AS node
FROM composer:2 AS composer
FROM php:8.3.36-cli-alpine
RUN apk add --no-cache libstdc++ libgcc
COPY --from=node /usr/local/bin/node /usr/local/bin/node
COPY --from=node /usr/local/lib/node_modules /usr/local/lib/node_modules
RUN ln -s /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm
COPY --from=composer /usr/bin/composer /usr/local/bin/composer
WORKDIR /app
COPY package.json package-lock.json composer.json composer.lock ./
RUN npm ci --ignore-scripts && composer install --no-dev --no-interaction --prefer-dist --no-progress
COPY src ./src
COPY php ./php
COPY tools ./tools
COPY tests ./tests
RUN mkdir -p public/records
