Skip to content

Commit

Permalink
add php 8.4 dockerfile (#26)
Browse files Browse the repository at this point in the history
  • Loading branch information
tomb1n0 authored Nov 22, 2024
1 parent 99c3e9e commit 63a8203
Show file tree
Hide file tree
Showing 2 changed files with 60 additions and 0 deletions.
1 change: 1 addition & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ jobs:
- php-81
- php-82
- php-83
- php-84
- node-6
- node-8
- node-10
Expand Down
59 changes: 59 additions & 0 deletions php-84/DockerFile
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
############################################################
# Dockerfile to create a php container to run the project
############################################################

FROM php:8.4-fpm
COPY --from=php:8.4-cli /usr/local/bin/phpdbg /usr/local/bin/

# Set working directory
WORKDIR /var/www

# NVM Settings
ENV NVM_DIR /usr/local/nvm
ENV NVM_VERSION v0.39.3

# Copy all config
COPY /resources/config/php/ /docker-config/

# Only copy install scripts
COPY /resources/scripts/php/install_* /docker-scripts/

# Run Installation Scripts
RUN /docker-scripts/install_dependencies.sh sudo vim nano netcat-traditional git iputils-ping dnsutils default-mysql-client imagemagick jq
RUN install-php-extensions mysqli \
pdo_mysql \
mbstring \
exif \
pcntl \
soap \
gd \
zip \
sockets \
opcache \
intl \
redis \
imagick/imagick@master \
yaml
RUN /docker-scripts/install_users.sh
RUN /docker-scripts/install_config.sh
RUN /docker-scripts/install_nvm.sh

# Copy Entrypoint & Start Scripts etc.
# If these change we don't want to rerun the above layers, hence do this last.
COPY /resources/scripts/php/entrypoint.sh /docker-scripts/entrypoint.sh
COPY /resources/scripts/php/root-start-script.sh /docker-scripts/root-start-script.sh
COPY /resources/scripts/php/www-start-script.sh /docker-scripts/www-start-script.sh
COPY /resources/scripts/php/qa-start-script.sh /docker-scripts/qa-start-script.sh

# Copy the script to run the scheduler
COPY /resources/scripts/php/run-scheduler.sh /run-scheduler.sh

ENTRYPOINT [ "/docker-scripts/entrypoint.sh" ]

# Change to WWW user
USER www

# Expose port 9000 and start php-fpm server
EXPOSE 9000

CMD ["php-fpm"]

0 comments on commit 63a8203

Please sign in to comment.