Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 7 additions & 9 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,17 @@
# STAGE 1.2: Setup PHP and Dependencies
# --------------------------------------------

FROM dunglas/frankenphp:1-php8.3-alpine AS frankenphp
FROM phpswoole/swoole:php8.3-alpine AS swoole
LABEL maintainer="FSR5 FH-Aachen"

# use workfir from frankenphp container
# use workdir from swoole container
WORKDIR /app

# install php extensions
RUN apk add libpq-dev linux-headers
RUN docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql
RUN docker-php-ext-install bcmath pdo_mysql pdo pdo_pgsql pgsql pcntl sockets
RUN apk add --no-cache pcre-dev $PHPIZE_DEPS && pecl install redis && docker-php-ext-enable redis.so
# RUN apk add --no-cache pcre-dev $PHPIZE_DEPS && pecl install redis && docker-php-ext-enable redis.so

# install composer
COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer
Expand Down Expand Up @@ -63,14 +63,12 @@
RUN mkdir -p /app/storage/logs
RUN chmod -R 777 ./storage

# install and configure frankenphp
#COPY --from=frankenphp /usr/local/bin/frankenphp /usr/local/bin/frankenphp

ENV FRANKENPHP_MAX_REQUESTS=512
ENV FRANKENPHP_WORKERS="auto"
# both are the default values
ENV OCTANE_MAX_REQUESTS=500
ENV OCTANE_WORKERS="auto"

EXPOSE 8000

CMD php artisan octane:frankenphp --host="0.0.0.0" --workers=${FRANKENPHP_WORKERS} --max-requests=${FRANKENPHP_MAX_REQUESTS}
CMD php artisan octane:start --server=swoole --host="0.0.0.0" --workers=${OCTANE_WORKERS} --max-requests=${OCTANE_MAX_REQUESTS}

Check warning on line 72 in Dockerfile

View workflow job for this annotation

GitHub Actions / e2e

JSON arguments recommended for ENTRYPOINT/CMD to prevent unintended behavior related to OS signals

JSONArgsRecommended: JSON arguments recommended for CMD to prevent unintended behavior related to OS signals More info: https://docs.docker.com/go/dockerfile/rule/json-args-recommended/

HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 CMD php artisan octane:status
Loading