- Initial release,

- Based on rx3-docker/php-apache:1.6.0-mga9 & rx3-docker/mariadb:1.1.4-mga9 images.
- Use tiki 27.4 from Rx3 rpm.
This commit is contained in:
2025-12-27 12:29:31 +01:00
commit a177ee57ca
14 changed files with 321 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@@ -0,0 +1,2 @@
*~
*.old

51
Dockerfile Normal file
View File

@@ -0,0 +1,51 @@
# Rx3-Docker/Tiki Dockerfile
#-------------------------------------------------------------------------------
ARG IMG_FROM_URL="rx3-docker/php-apache:latest"
FROM ${IMG_FROM_URL}
ARG IMG_NAME
ARG IMG_NAME_FULL
ARG IMG_VERSION
ARG IMG_MAINTAINER
LABEL org.rx3.${IMG_NAME}.name=${IMG_NAME_FULL}
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
LABEL maintainer=${IMG_MAINTAINER}ARG TIKI_VERSION=1.43.5
ARG HTTPD_VHOST_CONFIG_DIR=/etc/httpd/conf/sites.d/default_vhost.d
ARG TIKI_CORE_CONFIG_FILE=${HTTPD_VHOST_CONFIG_DIR}/70-tiki-core.conf
ARG TIKI_WWW_DIR=/var/www/tiki
#---------------------------------------------------------------------------------------------------
ARG TIKI='#!/bin/bash \n\
\n\
cp -Rf '${TIKI_WWW_DIR}.ref/*' '${TIKI_WWW_DIR}' \n\
\n\
chown -R apache:apache '${TIKI_WWW_DIR}' \n\
chmod -R a-x,a+X '${TIKI_WWW_DIR}' \n\
chmod o-rwx '${TIKI_WWW_DIR}' \n\
chmod -R u+rwX '${TIKI_WWW_DIR}' \n\
\n\
cp -f '${TIKI_CORE_CONFIG_FILE}.ref' '${TIKI_CORE_CONFIG_FILE}' \n\
\n\
sed -i -e "s%TIKI_URL%${TIKI_URL}%g" '${TIKI_CORE_CONFIG_FILE}' \n\
\n\
sed -i -e "s%mailhub=mail%mailhub=${SMTP_SERVER}%" /etc/ssmtp/ssmtp.conf'
#---------------------------------------------------------------------------------------------------
RUN urpmi.update -a \
&& urpmi --force wget ssmtp tiki \
&& mv /etc/httpd/conf/sites.d/tiki.conf ${TIKI_CORE_CONFIG_FILE}.ref \
&& sed -i -e "s%Alias /tiki%Alias TIKI_URL%" ${TIKI_CORE_CONFIG_FILE}.ref \
&& mv ${TIKI_WWW_DIR} ${TIKI_WWW_DIR}.ref \
&& echo -e "${TIKI}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/init.d/tiki \
&& chmod a+x /etc/init.d/tiki \
&& ln -s /etc/init.d/tiki /etc/rcD.d/S40tiki

19
ReadMe.txt Normal file
View File

@@ -0,0 +1,19 @@
Welcome to Rx3-Docker/Tiki docker image!
This project aims to build a Tiki docker image.
Features:
- Curtently based on rx3-docker/php-apache:1.6.0-mga9 & rx3-docker/mariadb:1.1.4-mga9 images,
- Sync with Tiki 2.4.
Enjoy it!
Your Rx3 Team.
--
arnaud@rx3.net
https://git.rx3.org/gitea/rx3-docker/tiki

7
ReleaseNotes.txt Normal file
View File

@@ -0,0 +1,7 @@
------------------------------------------------------------------------------------------------------------------------------------
Rx3-Docker/MediaWiki V 1.0.0 - A. GIBERT - 2025/12/27
------------------------------------------------------------------------------------------------------------------------------------
- Initial release,
- Based on rx3-docker/php-apache:1.6.0-mga9 & rx3-docker/mariadb:1.1.4-mga9 images.
- Use tiki 27.4 from Rx3 rpm.

95
compose.yaml Normal file
View File

@@ -0,0 +1,95 @@
# Rx3-Docker/Tiki Docker Image
#-------------------------------------------------------------------------------
name: ${HOST_NAME_PREFIX}
services:
database:
container_name: ${DB_HOST_NAME}
hostname: ${DB_HOST_NAME}
image: ${DB_IMG_URL}
restart: unless-stopped
environment:
MARIADB_UID: ${DB_USER_ID}
MARIADB_GID: ${DB_GROUP_ID}
MARIADB_ROOT_HOST: ${DB_ROOT_HOST}
MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
MARIADB_DATABASE: ${DB_DB_NAME}
MARIADB_USER: ${DB_DB_USER}
MARIADB_PASSWORD: ${DB_DB_PASSWORD}
healthcheck:
test: ["CMD", 'mysqladmin', 'ping', '-h', 'localhost', '-u', 'root', '-p${DB_ROOT_PASSWORD}' ]
interval: 10s
timeout: 3s
retries: 3
volumes:
- ./${DB_LIB_EXT}:${DB_LIB_INT}
- ./${DB_LOG_INIT_EXT}:${DB_LOG_INIT_INT}
- ./${DB_LOG_SV_EXT}:${DB_LOG_SV_INT}
- ./${DB_LOG_MAIN_EXT}:${DB_LOG_MAIN_INT}
networks:
- appl
ports:
- "127.0.0.1:${DB_PORT_SV_EXT}:${DB_PORT_SV_INT}"
- "127.0.0.1:${DB_PORT_MAIN_EXT}:${DB_PORT_MAIN_INT}"
#-------------------------------------------------------------------------------
webapp:
container_name: ${WA_HOST_NAME}
hostname: ${WA_HOST_NAME}
image: ${WA_IMG_URL}
build:
context: .
args:
IMG_NAME: ${WA_IMG_URL}
IMG_NAME_FULL: ${WA_IMG_NAME_FULL}
IMG_VERSION: ${WA_IMG_VERSION}
IMG_MAINTAINER: ${APPL_MAINTAINER}
IMG_FROM_URL: ${WA_IMG_FROM_URL}
restart: unless-stopped
depends_on:
database:
condition: service_healthy
environment:
SERVER_CROND_ENABLED: ${WA_CROND_ENABLED}
APACHE_UID: ${WA_USER_ID}
APACHE_GID: ${WA_GROUP_ID}
APACHE_DOC_ROOT: ${WA_APACHE_DOC_ROOT}
PHP_UPLOAD_LIMIT: ${WA_PHP_UPLOAD_LIMIT}
TIKI_URL: ${WA_TIKI_URL}
volumes:
- ./${WA_LOG_INIT_EXT}:${WA_LOG_INIT_INT}
- ./${WA_LOG_SV_EXT}:${WA_LOG_SV_INT}
- ./${WA_LOG_HTTPD_EXT}:${WA_LOG_HTTPD_INT}
- ./${WA_WWW_EXT}:${WA_WWW_INT}
networks:
- appl
ports:
- "127.0.0.1:${WA_PORT_SV_EXT}:${WA_PORT_SV_INT}"
- "127.0.0.1:${WA_PORT_MAIN_EXT}:${WA_PORT_MAIN_INT}"
networks:
appl:
name: ${NETWORK_NAME}
driver: bridge
driver_opts:
com.docker.network.bridge.name: ${NETWORK_IF_NAME}

115
env.dist Normal file
View File

@@ -0,0 +1,115 @@
# Rx3-Docker/Tiki Docker Image
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Global Settings
#-------------------------------------------------------------------------------
ORG_NAME="rx3-docker"
ORG_REGISTRY="docker.xor.rx3:5000"
ORG_URL_PREFIX="${ORG_REGISTRY}/${ORG_NAME}"
#-------------------------------------------------------------------------------
# Image Settings
#-------------------------------------------------------------------------------
APPL_NAME="tiki"
APPL_NAME_FULL="Tiki Server"
APPL_NAME_SHORT="tiki"
APPL_ORG="rx3-docker"
APPL_VERSION="1.0.0"
APPL_MAINTAINER='"Arnaud G. GIBERT" <arnaud@rx3.net>'
#-------------------------------------------------------------------------------
# User Settings
#-------------------------------------------------------------------------------
#APPL_ENV="prd"
#APPL_ENV="tst"
#APPL_ENV="int"
APPL_ENV="dvp"
#-------------------------------------------------------------------------------
# Common
#-------------------------------------------------------------------------------
if [[ "${APPL_ENV}" != "prd" ]]
then
APPL_SUFFIX="-${APPL_ENV}"
PORT_ENV_OFFSET=100
else
APPL_SUFFIX=""
PORT_ENV_OFFSET=0
fi
ORG_URL_PREFIX="${ORG_REGISTRY}/${ORG_NAME}"
APPL_URL_PREFIX="${ORG_REGISTRY}/${APPL_ORG}/${APPL_NAME_SHORT}"
HOST_NAME_PREFIX=${APPL_NAME_SHORT}${APPL_SUFFIX}
PORT_ENV_OFFSET=0
PORT_SV_INT=9001
PORT_SV_OFFSET=1000
NETWORK_NAME=${HOST_NAME_PREFIX}
NETWORK_IF_NAME=br-${HOST_NAME_PREFIX}
DOCKER_TOOLS_DEBUG=FALSE
DOCKER_TOOLS_VOLUME=MIXED
#DOCKER_TOOLS_VOLUME=MERGED
DOCKER_TOOLS_EXEPTION_LIBS="postgres:pgsql"
#------------------+----------+--------------------------+--------------------+------------------+-------------------------------+----------------------+--------------------+---------------+------------+--------------+------------+-------+-------+-------+-------+--------------+--------------+
# | Variable | Service | Target Image | From Image | Module | Main Port | Admin Port | User | Group |
# | 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 DB database ${ORG_URL_PREFIX} mariadb - 1.1.4-mga9 - - - mysql - 8006 3306 - - mysql mysql
docker_service_add WA webapp ${ORG_URL_PREFIX} tiki "Rx3-Docker/Tiki" ${APPL_VERSION}-mga9 ${ORG_URL_PREFIX} php-apache 1.6.0-mga9 - - 8077 80 - - apache apache
#-------------------------------------------------------------------------------
# Database
#-------------------------------------------------------------------------------
DB_ROOT_HOST='%' # needs to be enclosed with quotes
DB_ROOT_PASSWORD="mysqladmin"
DB_DB_NAME="tiki"
DB_DB_USER="tiki"
DB_DB_PASSWORD="tikiadmin"
DB_SERVER_NAME="Tiki"
#-------------------------------------------------------------------------------
# WebApp
#-------------------------------------------------------------------------------
WA_CROND_ENABLED="FALSE"
WA_APACHE_DOC_ROOT="/var/www/html"
WA_PHP_UPLOAD_LIMIT="64M"
WA_LOG_HTTPD_EXT="./var/log/httpd-webapp"
WA_LOG_HTTPD_INT="/var/log/httpd"
WA_WWW_EXT=./var/www/tiki
WA_WWW_INT=/var/www/${APPL_NAME}
#docker_config_add ${WA_CONF_EXT}/config_inc.php ${WA_CONF_EXT}/config_inc.php.ref
WA_TIKI_URL="/tiki"
#WA_SMTP_SERVER="mail.rx3.net"

4
var/lib/mysql/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

4
var/log/httpd-webapp/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

4
var/log/init-database/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

4
var/log/init-webapp/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

4
var/log/mysql/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

4
var/log/supervisor-webapp/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore

4
var/www/tiki/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Except this file
!.gitignore