mirror of
https://github.com/devilbox/docker-php-fpm.git
synced 2025-12-10 11:01:14 +00:00
100 lines
3.3 KiB
Groff
100 lines
3.3 KiB
Groff
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-prod.j2 instead.
|
|
FROM devilbox/php-fpm:5.6-mods
|
|
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
|
|
|
|
|
###
|
|
### Labels
|
|
###
|
|
# https://github.com/opencontainers/image-spec/blob/master/annotations.md
|
|
#LABEL "org.opencontainers.image.created"=""
|
|
#LABEL "org.opencontainers.image.version"=""
|
|
#LABEL "org.opencontainers.image.revision"=""
|
|
LABEL "maintainer"="cytopia <cytopia@everythingcli.org>"
|
|
LABEL "org.opencontainers.image.authors"="cytopia <cytopia@everythingcli.org>"
|
|
LABEL "org.opencontainers.image.url"="https://github.com/devilbox/docker-php-fpm"
|
|
LABEL "org.opencontainers.image.documentation"="https://github.com/devilbox/docker-php-fpm"
|
|
LABEL "org.opencontainers.image.source"="https://github.com/devilbox/docker-php-fpm"
|
|
LABEL "org.opencontainers.image.vendor"="devilbox"
|
|
LABEL "org.opencontainers.image.licenses"="MIT"
|
|
LABEL "org.opencontainers.image.ref.name"="5.6-prod"
|
|
LABEL "org.opencontainers.image.title"="PHP-FPM 5.6-prod"
|
|
LABEL "org.opencontainers.image.description"="PHP-FPM 5.6-prod"
|
|
|
|
|
|
###
|
|
### Install
|
|
###
|
|
RUN set -eux \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get update -q \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -q -y --no-install-recommends --no-install-suggests apt-utils \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -q -y --no-install-recommends --no-install-suggests \
|
|
locales-all \
|
|
postfix \
|
|
postfix-pcre \
|
|
cron \
|
|
rsyslog \
|
|
socat \
|
|
supervisor \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get purge -q -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false apt-utils \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
\
|
|
&& rm -rf /etc/supervisor* \
|
|
&& mkdir -p /var/log/supervisor \
|
|
&& mkdir -p /etc/supervisor/conf.d \
|
|
&& mkdir -p /etc/supervisor/custom.d \
|
|
&& chown devilbox:devilbox /etc/supervisor/custom.d \
|
|
\
|
|
&& (find /usr/local/bin -type f -print0 | xargs -n1 -0 strip --strip-all -p 2>/dev/null || true) \
|
|
&& (find /usr/local/lib -type f -print0 | xargs -n1 -0 strip --strip-all -p 2>/dev/null || true) \
|
|
&& (find /usr/local/sbin -type f -print0 | xargs -n1 -0 strip --strip-all -p 2>/dev/null || true)
|
|
|
|
|
|
###
|
|
### Verify
|
|
###
|
|
RUN set -eux \
|
|
&& echo "date.timezone=UTC" > /usr/local/etc/php/php.ini \
|
|
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.6' \
|
|
&& /usr/local/sbin/php-fpm --test \
|
|
\
|
|
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
|
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi \
|
|
&& PHP_ERROR="$( php -i 2>&1 1>/dev/null )" \
|
|
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi \
|
|
\
|
|
&& PHP_FPM_ERROR="$( php-fpm -v 2>&1 1>/dev/null )" \
|
|
&& if [ -n "${PHP_FPM_ERROR}" ]; then echo "${PHP_FPM_ERROR}"; false; fi \
|
|
&& PHP_FPM_ERROR="$( php-fpm -i 2>&1 1>/dev/null )" \
|
|
&& if [ -n "${PHP_FPM_ERROR}" ]; then echo "${PHP_FPM_ERROR}"; false; fi \
|
|
&& rm -f /usr/local/etc/php/php.ini
|
|
|
|
|
|
###
|
|
### Copy files
|
|
###
|
|
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
|
COPY ./data/postfix.sh /usr/local/sbin/postfix.sh
|
|
COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
|
|
|
|
|
###
|
|
### Volumes
|
|
###
|
|
VOLUME /var/log/php
|
|
VOLUME /var/mail
|
|
|
|
|
|
###
|
|
### Ports
|
|
###
|
|
EXPOSE 9000
|
|
|
|
|
|
###
|
|
### Entrypoint
|
|
###
|
|
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/supervisord.conf"]
|
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|