-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
60 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -22,6 +22,7 @@ jobs: | |
- php-81 | ||
- php-82 | ||
- php-83 | ||
- php-84 | ||
- node-6 | ||
- node-8 | ||
- node-10 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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"] |