Compare commits

..

5 Commits

Author SHA1 Message Date
62cd36b12b - Now use rx3/server-mga9:1.1.3 image,
- Add pwauth auth program,
- Increase php params:
    - memory_limit from 128M to 512M,
    - upload_max_filesize from 16M to 32M,
    - post_max_size from 8M to 32M,
- Don't expose unneeded /var/www/html in compose file,
- Use now docker_tools for .env building.
2024-10-05 12:56:05 +02:00
08ec413f3a - Now use rx3/server-mga9:1.1.2 image,
- Fix Apache root document not updated in /etc/httpd/conf/conf.d/rx3.conf.
2024-08-28 18:41:37 +02:00
9736f81016 - Now use rx3/server-mga9:1.1.1 image,
- Remove test init service,
- Minor compose / dockerfile args & structure improvements.
2024-08-27 00:57:56 +02:00
54ccdf959e - Now use rx3/server-mga9:1.1.0 image,
- supervisor & logrotate configured.
2024-08-26 22:07:22 +02:00
1d1674ebac - Add and use APACHE_DOC_ROOT environment variable,
- Move apache_init script to /usr/local/sbin,
- Use base-mga9:1.2.1.
2024-08-24 23:23:23 +02:00
6 changed files with 172 additions and 33 deletions

8
.env
View File

@ -1,8 +0,0 @@
IMG_ID="php-apache-mga9"
IMG_NAME="Rx3 PHP Apache Mageia-9 Docker Image"
IMG_VERSION="1.1.0"
IMG_MAINTAINER='"Arnaud G. GIBERT" <arnaud@rx3.net>'
# To be configured
APACHE_UID=980
APACHE_GID=977

View File

@ -1,27 +1,74 @@
# Rx3 PHP Apache Mageia-9 Docker Image
#-------------------------------------------------------------------------------
FROM docker.xor.rx3:5000/rx3/base-mga9:1.2.0
ARG IMG_URL_PREFIX="rx3"
FROM ${IMG_URL_PREFIX}/server-mga9:1.1.3
ARG IMG_ID
ARG IMG_NAME
ARG IMG_FULL_NAME
ARG IMG_VERSION
ARG IMG_MAINTAINER
LABEL org.rx3.${IMG_ID}.name=${IMG_NAME}
LABEL org.rx3.${IMG_ID}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_ID}.maintainer=${IMG_MAINTAINER}
LABEL org.rx3.${IMG_NAME}.name=${IMG_FULL_NAME}
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
LABEL maintainer=${IMG_MAINTAINER}
RUN urpmi --force apache apache-mod_php php-cli php-pgsql php-mysqli php-pdo_pgsql php-pdo_mysql php-phpmailer \
&& echo -e "RewriteEngine On\n<Directory /var/www/html>\n Options Includes Indexes FollowSymLinks\n AllowOverride All\n Require all granted\n</Directory>" >/etc/httpd/conf/conf.d/rx3.conf \
&& echo -e "<?php\n phpinfo();\n phpinfo(INFO_MODULES);\n?>\n" >/var/www/html/info.php \
&& echo -e '#!/bin/bash\n\nusermod -u ${APACHE_UID} apache\ngroupmod -g ${APACHE_GID} apache\n\nchown -R apache:apache /var/log/httpd\n\n/usr/sbin/httpd -DFOREGROUND' > /sbin/apache_init \
&& chmod a+x /sbin/apache_init
#---------------------------------------------------------------------------------------------------
ARG HTTPD_CONF='RewriteEngine On \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\
?>'
#---------------------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------------------
ARG HTTPD='#!/bin/bash \n\
\n\
usermod -u ${APACHE_UID} apache \n\
groupmod -g ${APACHE_GID} apache \n\
\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\
do \n\
sed -i -e "s%/var/www/html%${APACHE_DOC_ROOT}%" ${file} \n\
done \n\
\n\
chgrp apache /usr/bin/pwauth \n\
chmod u+s /usr/bin/pwauth'
#---------------------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------------------
ARG HTTPD_INI='[program:httpd] \n\
command=/usr/sbin/httpd -DFOREGROUND'
#---------------------------------------------------------------------------------------------------
RUN urpmi --force apache apache-mod_php php-cli php-pgsql php-mysqli php-pdo_pgsql php-pdo_mysql php-phpmailer pwauth \
&& 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 \
&& 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 \
&& 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
VOLUME /var/www/html
EXPOSE 80
ENTRYPOINT ["/sbin/apache_init"]

View File

@ -1,14 +1,15 @@
Welcome to php-apache-mga9 docker image!
Welcome to Rx3/PHP-Apache-Mga9 docker image!
This is project aims to build a PHP + Apache + Mageia 9 docker image used by others Rx3 packaging projects.
Features:
- Curtently based on base-mga9:1.2.0 image,
- Curtently based on rx3/server-mga9:1.1.2 image,
- PostgreSQL & MySQL ready,
- PHPMailer installed,
- Apache UID & GID configurable.
- logrotate configured,
- Apache UID, GID & document root directory configurable.
Enjoy it!

View File

@ -1,14 +1,68 @@
------------------------------------------------------------------------------------------------------------------------------------
PHP-Apache-Mga9 V 1.1.0 - A. GIBERT - 2024/08/24
Rx3/PHP-Apache-Mga9 V 1.3.3 - A. GIBERT - 2024/10/05
------------------------------------------------------------------------------------------------------------------------------------
- Now use rx3/server-mga9:1.1.3 image,
- Add pwauth auth program,
- Increase php params:
- memory_limit from 128M to 512M,
- upload_max_filesize from 16M to 32M,
- post_max_size from 8M to 32M,
- Don't expose unneeded /var/www/html in compose file,
- Variabilization of external server ports in env & compose file,
- Use now docker_tools for .env building.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/PHP-Apache-Mga9 V 1.3.2 - A. GIBERT - 2024/08/28
------------------------------------------------------------------------------------------------------------------------------------
- Now use rx3/server-mga9:1.1.2 image,
- Fix Apache root document not updated in /etc/httpd/conf/conf.d/rx3.conf.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/PHP-Apache-Mga9 V 1.3.1 - A. GIBERT - 2024/08/27
------------------------------------------------------------------------------------------------------------------------------------
- Now use rx3/server-mga9:1.1.1 image,
- Remove test init service,
- Minor compose / dockerfile args & structure improvements.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/PHP-Apache-Mga9 V 1.3.0 - A. GIBERT - 2024/08/26
------------------------------------------------------------------------------------------------------------------------------------
- Now use rx3/server-mga9:1.1.0 image,
- supervisor & logrotate configured.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/PHP-Apache-Mga9 V 1.2.0 - A. GIBERT - 2024/08/24
------------------------------------------------------------------------------------------------------------------------------------
- Add and use APACHE_DOC_ROOT environment variable,
- Move apache_init script to /usr/local/sbin,
- Use base-mga9:1.2.1.
------------------------------------------------------------------------------------------------------------------------------------
Rx3/PHP-Apache-Mga9 V 1.1.0 - A. GIBERT - 2024/08/24
------------------------------------------------------------------------------------------------------------------------------------
- Add PHP PDO PostgreSQL & MySQL modules,
- Add and use APACHE_UID & APACHE_GID environement variable.
- Add and use APACHE_UID & APACHE_GID environment variable.
------------------------------------------------------------------------------------------------------------------------------------
PHP-Apache-Mga9 V 1.0.0 - A. GIBERT - 2024/08/22
Rx3/PHP-Apache-Mga9 V 1.0.0 - A. GIBERT - 2024/08/22
------------------------------------------------------------------------------------------------------------------------------------
- Initial release,

View File

@ -1,29 +1,36 @@
# Rx3 PHP Apache Mageia-9 Docker Image
#-------------------------------------------------------------------------------
name: ${IMG_ID}
name: ${IMG_NAME}
services:
webapp:
container_name: ${IMG_ID}
image: docker.xor.rx3:5000/rx3/${IMG_ID}:${IMG_VERSION}
container_name: ${IMG_NAME}
image: ${IMG_URL}
build:
context: .
args:
- IMG_ID=${IMG_ID}
- IMG_NAME=${IMG_NAME}
- IMG_FULL_NAME=${IMG_FULL_NAME}
- IMG_VERSION=${IMG_VERSION}
- IMG_MAINTAINER=${IMG_MAINTAINER}
- IMG_URL_PREFIX=${IMG_URL_PREFIX}
restart: unless-stopped
environment:
APACHE_UID: ${APACHE_UID}
APACHE_GID: ${APACHE_GID}
APACHE_UID: ${APACHE_UID}
APACHE_GID: ${APACHE_GID}
APACHE_DOC_ROOT: ${APACHE_DOC_ROOT}
# volumes:
# - ./var/www/html:/var/www/html
network_mode: bridge
ports:
- "127.0.0.1:8080:80"
- "127.0.0.1:${WEBAPP_SV_PORT}:9001"
- "127.0.0.1:${WEBAPP_PORT}:80"

38
env Normal file
View File

@ -0,0 +1,38 @@
# Rx3 PHP Apache Mageia-9 Docker Image
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Global Settings
#-------------------------------------------------------------------------------
IMG_ORG="rx3"
IMG_REGISTRY="docker.xor.rx3:5000"
IMG_URL_PREFIX="${IMG_REGISTRY}/${IMG_ORG}"
#-------------------------------------------------------------------------------
# Image Settings
#-------------------------------------------------------------------------------
IMG_NAME="php-apache-mga9"
IMG_FULL_NAME="Rx3 PHP Apache Mageia-9 Docker Image"
IMG_VERSION="1.3.3"
IMG_URL="${IMG_URL_PREFIX}/${IMG_NAME}:${IMG_VERSION}"
IMG_MAINTAINER='"Arnaud G. GIBERT" <arnaud@rx3.net>'
#-------------------------------------------------------------------------------
# User Settings
#-------------------------------------------------------------------------------
ENV_PORT_OFFSET=0
SV_PORT_OFFSET=1000
WEBAPP_PORT=$(( 8080 + ${ENV_PORT_OFFSET}))
WEBAPP_SV_PORT=$(( ${WEBAPP_PORT} + ${SV_PORT_OFFSET}))
APACHE_UID=980
APACHE_GID=977
APACHE_DOC_ROOT=/var/www/html