FROM php:8.3-cli-alpine3 as backend
FROM spiralscout/roadrunner:2024.1 as roadrunner
# https://github.com/mlocati/docker-php-extension-installer
RUN --mount=type=bind,from=mlocati/php-extension-installer:2,source=/usr/bin/install-php-extensions,target=/usr/local/bin/install-php-extensions \
install-php-extensions @composer-2 opcache zip intl sockets && \
apk del --no-cache ${PHPIZE_DEPS} ${BUILD_DEPENDS}
EXPOSE 8080/tcp
WORKDIR /app
COPY --from=roadrunner /usr/bin/rr ./
ENV COMPOSER_ALLOW_SUPERUSER=1
# Copy composer files from app directory to install dependencies
COPY ./app/composer.* .
RUN composer install --optimize-autoloader --no-dev
# Copy application files
COPY ./app .
# Run RoadRunner server
CMD ./rr serve -c .rr.yaml