10 Commits

Author SHA1 Message Date
13e032e9e4 - Enable Apache Macro support,
- Add SupervisorProxy macro,
- Change rx3.conf config priority from 50 to 30.
2026-02-11 19:25:27 +01:00
8f5a7cc17d - Fix error when APACHE_UID / APACHE_GID not provided,
- Perform HTTPD initialisation even when not activated.
2025-12-01 20:25:49 +01:00
353df70ee5 - Fix APACHE_DOC_ROOT update in default_vhost.d/50-rx3.conf. 2025-11-29 18:28:57 +01:00
c17f169157 - Fix httpd not enabled by default! 2025-11-28 14:38:59 +01:00
fc4bb2fd50 - Rename 00_default_vhost.conf into 00-default_vhost.conf. 2025-11-28 13:24:54 +01:00
c92a3fbbca - Switch to new default_vhost.d layout,
- Use now rx3-docker/server:1.2.7-mga9 image,
- Rebuild for updates.
2025-11-28 12:11:43 +01:00
47adc99eba - Remove stupid /var/log/README broken link. 2025-09-22 18:21:29 +02:00
6263b0cba6 - Use now rx3-docker/server:1.2.6-mga9 image,
- Rebuild for updates.
2025-09-19 18:23:38 +02:00
e63b7c338c - Use now rx3-docker/server:1.2.2-mga9 image. 2025-04-21 17:47:27 +02:00
0b2b46314d - Add PHP_MEMORY_LIMIT & PHP_UPLOAD_LIMIT environment variable,
- Use now rx3-docker/server:1.2.1-mga9 image.
2025-03-08 12:31:27 +01:00
5 changed files with 132 additions and 50 deletions

View File

@@ -21,61 +21,86 @@ ARG APACHE_PORT
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
ARG HTTPD='#!/bin/bash \n\
\n\
usermod -u ${APACHE_UID} apache \n\
groupmod -g ${APACHE_GID} apache \n\
[[ "${APACHE_UID}" != "" ]] && usermod -u ${APACHE_UID} apache \n\
[[ "${APACHE_GID}" != "" ]] && groupmod -g ${APACHE_GID} apache \n\
\n\
chgrp apache /usr/bin/pwauth \n\
chmod u+s /usr/bin/pwauth \n\
\n\
if [[ "${APACHE_HTTPD_ENABLED}" )= "FALSE" ]] \n\
then \n\
mv /etc/supervisord.d/httpd.ini /etc/supervisord.d/httpd.ini.disabled \n\
else \n\
chown -R apache:apache /var/log/httpd \n\
\n\
for file in /etc/httpd/conf/httpd.conf /etc/httpd/conf/conf.d/rx3.conf \n\
for file in /etc/httpd/conf/httpd.conf /etc/httpd/conf/sites.d/default_vhost.d/50-rx3.conf \n\
do \n\
sed -i -e "s%/var/www/html%${APACHE_DOC_ROOT}%" ${file} \n\
done \n\
\n\
[[ "${PHP_MEMORY_LIMIT}" == "" ]] && PHP_MEMORY_LIMIT="512M" \n\
[[ "${PHP_UPLOAD_LIMIT}" == "" ]] && PHP_UPLOAD_LIMIT="32M" \n\
\n\
sed -i -e "s/memory_limit = 128M/memory_limit = ${PHP_MEMORY_LIMIT}/" /etc/php.d/01_ressourcelimits.ini \n\
sed -i -e "s/upload_max_filesize = 16M/upload_max_filesize = ${PHP_UPLOAD_LIMIT}/" /etc/php.d/01_fileuploads.ini \n\
sed -i -e "s/post_max_size = 8M/post_max_size = ${PHP_UPLOAD_LIMIT}/" /etc/php.d/01_datahandling.ini \n\
\n\
# HTTPD enabled by default \n\
if [[ "${APACHE_HTTPD_ENABLED}" == "FALSE" ]] \n\
then \n\
file_enable /etc/supervisord.d/httpd.ini FALSE \n\
else \n\
file_enable /etc/supervisord.d/httpd.ini TRUE \n\
fi'
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
ARG HTTPD_INI='[program:httpd] \n\
command=/usr/sbin/httpd -DFOREGROUND'
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------------------
ARG HTTPD_CONF='RewriteEngine On \n\
#----------------------------------------------------------------------------------------------------------------------------
ARG HTTPD_CONF='<Macro SupervisorProxy $prefix $host $port> \n\
RewriteRule "^/$prefix$" "/$refix/" [R] \n\
\n\
<Location /$prefix/> \n\
ProxyPass http://$host:$port/ \n\
ProxyPassReverse http://$host:$port/ \n\
\n\
Header edit* Location ^(https?://[^/]+)/(?!$prefix/)(.*)$ $1/$prefix/index.html$2 \n\
</Location> \n\
</Macro> \n\
\n\
RewriteEngine On \n\
\n\
<Directory /var/www/html> \n\
Options Includes Indexes FollowSymLinks \n\
AllowOverride All \n\
Require all granted \n\
</Directory>'
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
ARG INFO_PHP='<?php \n\
phpinfo(); \n\
phpinfo( INFO_MODULES); \n\
?>'
#---------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------------------------------
RUN urpmi --force apache apache-mod_proxy apache-mod_proxy_html apache-mod_php php-cli php-pgsql php-mysqli php-pdo_pgsql php-pdo_mysql php-phpmailer pwauth \
RUN urpmi.update -a \
&& urpmi --force apache apache-mod_proxy apache-mod_proxy_html apache-mod_php php-cli php-pgsql php-mysqli php-pdo_pgsql php-pdo_mysql php-phpmailer pwauth \
&& sed -i -e "s%#LoadModule macro_module modules/mod_macro.so%LoadModule macro_module modules/mod_macro.so%" /etc/httpd/conf/modules.d/00_base.conf \
&& mv /etc/httpd/conf/sites.d/00_default_vhosts.conf /etc/httpd/conf/sites.d/00-default_vhost.conf \
&& sed -i -e "s%ServerName localhost%ServerName localhost\n\n Include conf/sites.d/default_vhost.d/*.conf%" /etc/httpd/conf/sites.d/00-default_vhost.conf \
&& mkdir /etc/httpd/conf/sites.d/default_vhost.d \
&& rm -f /var/log/README \
&& echo -e "${HTTPD}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/init.d/httpd \
&& chmod a+x /etc/init.d/httpd \
&& ln -s /etc/init.d/httpd /etc/rcD.d/S30httpd \
&& echo -e "${HTTPD_INI}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/supervisord.d/httpd.ini \
&& echo -e "${HTTPD_CONF}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/httpd/conf/conf.d/rx3.conf \
&& echo -e "${INFO_PHP}" | sed -e "s/\`/'/g" -e 's/ *$//' > /var/www/html/info.php \
&& sed -i -e "s/memory_limit = 128M/memory_limit = 512M/" /etc/php.d/01_ressourcelimits.ini \
&& sed -i -e "s/upload_max_filesize = 16M/upload_max_filesize = 32M/" /etc/php.d/01_fileuploads.ini \
&& sed -i -e "s/post_max_size = 8M/post_max_size = 32M/" /etc/php.d/01_datahandling.ini
&& echo -e "${HTTPD_CONF}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/httpd/conf/sites.d/default_vhost.d/30-rx3.conf \
&& echo -e "${INFO_PHP}" | sed -e "s/\`/'/g" -e 's/ *$//' > /var/www/html/info.php
VOLUME ${APACHE_DOC_ROOT}

View File

@@ -5,13 +5,17 @@ Welcome to Rx3-Docker/PHP-Apache docker image!
This project aims to build a PHP + Apache docker image used by other Rx3 packaging projects.
Features:
- Curtently based on rx3-docker/server:1.2.0-mga9 image,
- Curtently based on rx3-docker/server:1.2.7-mga9 image,
- default_vhost.d layout support,
- PostgreSQL & MySQL ready,
- PHPMailer installed,
- logrotate configured,
- Apache UID, GID & document root directory configurable,
- mod_proxy + mod_proxy_html installed,
- HTTPD service enabled by default.
- SupervisorProxy Apache macro,
- HTTPD service enabled by default (APACHE_HTTPD_ENABLED),
- PHP_MEMORY_LIMIT variable set to 512M by default,
- PHP_UPLOAD_LIMIT variable set to 32M by defaylt.
Enjoy it!

View File

@@ -1,8 +1,56 @@
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/PHP-Apache V 1.6.1 - A. GIBERT - 2026/02/11
------------------------------------------------------------------------------------------------------------------------------------
- Enable Apache Macro support,
- Add SupervisorProxy macro,
- Change rx3.conf config priority from 50 to 30.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/PHP-Apache V 1.6.0 - A. GIBERT - 2025/12/01
------------------------------------------------------------------------------------------------------------------------------------
- Switch to new default_vhost.d layout,
- Fix error when APACHE_UID / APACHE_GID not provided,
- Perform HTTPD initialisation even when not activated,
- Use now rx3-docker/server:1.2.7-mga9 image,
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/PHP-Apache V 1.5.4 - A. GIBERT - 2025/09/19
------------------------------------------------------------------------------------------------------------------------------------
- Use now rx3-docker/server:1.2.6-mga9 image,
- Rebuild for updates.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/PHP-Apache V 1.5.3 - A. GIBERT - 2025/04/21
------------------------------------------------------------------------------------------------------------------------------------
- Use now rx3-docker/server:1.2.2-mga9 image.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/PHP-Apache V 1.5.2 - A. GIBERT - 2025/03/08
------------------------------------------------------------------------------------------------------------------------------------
- Add PHP_MEMORY_LIMIT & PHP_UPLOAD_LIMIT environment variable,
- Use now rx3-docker/server:1.2.1-mga9 image.
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/PHP-Apache V 1.5.1 - A. GIBERT - 2024/12/31
------------------------------------------------------------------------------------------------------------------------------------
- Add Apache enabling via APACHE_HTTPD_ENABLE environement variable.
- Add Apache enabling via APACHE_HTTPD_ENABLED environment variable.

View File

@@ -32,6 +32,8 @@ services:
APACHE_GID: ${WA_GROUP_ID}
APACHE_DOC_ROOT: ${WA_DOC_ROOT}
APACHE_HTTPD_ENABLED: ${WA_APACHE_HTTPD_ENABLED}
PHP_MEMORY_LIMIT: ${WA_PHP_MEMORY_LIMIT}
PHP_UPLOAD_LIMIT: ${WA_PHP_UPLOAD_LIMIT}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:${WA_PORT_MAIN_INT}"]
@@ -40,7 +42,7 @@ services:
retries: 3
volumes:
- ./${WA_LIB_EXT}:${WA_LIB_INT}
# - ./${WA_LIB_EXT}:${WA_LIB_INT}
- ./${WA_LOG_INIT_EXT}:${WA_LOG_INIT_INT}
- ./${WA_LOG_SV_EXT}:${WA_LOG_SV_INT}
- ./${WA_LOG_MAIN_EXT}:${WA_LOG_MAIN_INT}

View File

@@ -26,6 +26,7 @@ PORT_SV_OFFSET=1000
DOCKER_TOOLS_DEBUG=FALSE
DOCKER_TOOLS_VOLUME=SINGLE
#DOCKER_TOOLS_VOLUME=MIXED
#DOCKER_TOOLS_VOLUME=MERGED
#DOCKER_TOOLS_VOLUME=SPLITED
DOCKER_TOOLS_EXEPTION_LIBS="httpd:/var/www/html"
@@ -37,7 +38,7 @@ DOCKER_TOOLS_EXEPTION_LIBS="httpd:/var/www/html"
# | Prefix | Name | URL Prefix | Name | Name Full | Version | URL Prefix | Name | Version | Name | Version | Ext | Int | Ext | Int | Name / Id | Name / Id |
#------------------+----------+--------------------------+--------------------+------------------+-------------------------------+-----------------+--------------------+---------------+------------+--------------+------------+-------+-------+-------+-------+--------------+--------------+
docker_service_add WA webapp ${ORG_URL_PREFIX} php-apache "Rx3-Docker/PHP-Apache" 1.5.0-mga9 ${ORG_URL_PREFIX} server 1.2.0-mga9 httpd - 8080 80 - - apache apache
docker_service_add WA webapp ${ORG_URL_PREFIX} php-apache "Rx3-Docker/PHP-Apache" 1.6.1-mga9 ${ORG_URL_PREFIX} server 1.2.7-mga9 httpd - 8080 80 - - apache apache
@@ -49,3 +50,5 @@ SERVER_CROND_ENABLED="FALSE"
WA_DOC_ROOT="/var/www/html"
WA_APACHE_HTTPD_ENABLED="TRUE"
WA_PHP_MEMORY_LIMIT="512M"
WA_PHP_UPLOAD_LIMIT="32M"