Files
php-apache/Dockerfile
T
feedc0de b83d01de23
Publish PHP Apache image / Build, test and push (push) Successful in 1m16s
Add Imagick and Iconv to PHP image
2026-09-11 09:02:53 +02:00

35 lines
1.7 KiB
Docker

FROM archlinux:latest
ENV APACHE_SERVER_ADMIN=webmaster@localhost \
APACHE_STATUS_PORT=8080
RUN pacman -Syu --noconfirm apache php-apache php php-gd php-imagick php-pgsql \
&& pacman -Sc --noconfirm \
&& rm -v /var/log/pacman.log /var/lib/pacman/sync/*
RUN sed -i '/mod_mpm_event/ s/^/#/' /etc/httpd/conf/httpd.conf \
&& sed -i '/mod_mpm_prefork/ s/^#//' /etc/httpd/conf/httpd.conf \
&& sed -i -E 's#^(\s*CustomLog\s+)(["'\'']?)[^"'\''[:space:]]+\2#\1/dev/null#' /etc/httpd/conf/httpd.conf \
&& sed -i -E 's#^(\s*ErrorLog\s+)(["'\'']?)[^"'\''[:space:]]+\2#\1/dev/null#' /etc/httpd/conf/httpd.conf \
&& sed -i '/<Directory[[:space:]]\+"\/srv\/http">/,/<\/Directory>/ s/^\([[:space:]]*AllowOverride[[:space:]]*\)None/\1All/' /etc/httpd/conf/httpd.conf \
&& sed -i '/mod_rewrite/ s/^#//' /etc/httpd/conf/httpd.conf \
&& sed -i '/status_module/ s/^#//' /etc/httpd/conf/httpd.conf \
&& echo LoadModule php_module modules/libphp.so >> /etc/httpd/conf/httpd.conf \
&& echo AddHandler php-script .php >> /etc/httpd/conf/httpd.conf \
&& echo Include conf/extra/php_module.conf >> /etc/httpd/conf/httpd.conf \
&& echo Include conf/extra/apache-status.conf >> /etc/httpd/conf/httpd.conf \
&& install -d /etc/php/conf.d \
&& sed -i -e '/extension=exif/ s/^;//' \
-e '/extension=gd/ s/^;//' \
-e '/extension=iconv/ s/^;//' \
-e '/extension=intl/ s/^;//' \
-e '/extension=pgsql/ s/^;//' \
-e '/extension=pdo_pgsql/ s/^;//' \
/etc/php/php.ini
COPY opcache.ini /etc/php/conf.d/opcache.ini
COPY imagick.ini /etc/php/conf.d/imagick.ini
COPY apache-status.conf /etc/httpd/conf/extra/apache-status.conf
ENTRYPOINT ["httpd", "-DFOREGROUND"]