- Based on rx3-docker/php-apache:1.7.0-mga9 & rx3-docker/mariadb:1.2.0-mga9 images, - Use medshake 8.4.2 from Rx3 RPM, - Use docker-tools-1.5.2.
95 lines
7.1 KiB
Docker
95 lines
7.1 KiB
Docker
# Rx3-Docker/MedShake 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
|
|
ARG IMG_URL
|
|
|
|
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 HTTPD_VHOST_CONFIG_DIR=/etc/httpd/conf/sites.d/default_vhost.d
|
|
ARG MEDSHAKE_CORE_CONFIG_FILE=${HTTPD_VHOST_CONFIG_DIR}/70-medshake-core.conf
|
|
#ARG MEDSHAKE_SHARE_DIR=/usr/share/medshake
|
|
ARG MEDSHAKE_SHARE_DIR=/var/www/medshake
|
|
ARG MEDSHAKE_WWW_DIR=/var/www/medshake
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------------------------------
|
|
ARG MEDSHAKE='#!/bin/bash \n\
|
|
\n\
|
|
if [[ ! -d '${MEDSHAKE_WWW_DIR}'/public_html ]] \n\
|
|
then \n\
|
|
cp -Rf '${MEDSHAKE_WWW_DIR}.ref/*' '${MEDSHAKE_WWW_DIR}' \n\
|
|
fi \n\
|
|
\n\
|
|
chown -R apache:apache '${MEDSHAKE_WWW_DIR}' \n\
|
|
chmod -R a-x,a+X '${MEDSHAKE_WWW_DIR}' \n\
|
|
chmod o-rwx '${MEDSHAKE_WWW_DIR}' \n\
|
|
chmod -R ug+rwX '${MEDSHAKE_WWW_DIR}' \n\
|
|
\n\
|
|
cp -f '${MEDSHAKE_CORE_CONFIG_FILE}.ref' '${MEDSHAKE_CORE_CONFIG_FILE}' \n\
|
|
\n\
|
|
sed -i -e "s%MEDSHAKE_URL%${MEDSHAKE_URL}%g" '${MEDSHAKE_CORE_CONFIG_FILE}' \n\
|
|
\n\
|
|
IFS=":" \n\
|
|
read -r -a file <<< "${MEDSHAKE_ROOT_LINK_LISTZZZ}" \n\
|
|
\n\
|
|
i=0 \n\
|
|
while [[ ${i} -lt ${#file[@]} ]] \n\
|
|
do \n\
|
|
ln -s '${MEDSHAKE_WWW_DIR}'/${file[${i}]} '${MEDSHAKE_SHARE_DIR}' \n\
|
|
\n\
|
|
i=$(( ${i} + 1)) \n\
|
|
done \n\
|
|
\n\
|
|
sed -i -e "s%mailhub=mail%mailhub=${SMTP_SERVER}%" /etc/ssmtp/ssmtp.conf'
|
|
#---------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------------------------------
|
|
ARG MEDSHAKE_CORE_CONFIG='# MedShake configuration \n\
|
|
\n\
|
|
Alias MEDSHAKE_URL '${MEDSHAKE_SHARE_DIR}'/public_html/ \n\
|
|
\n\
|
|
<Directory '${MEDSHAKE_SHARE_DIR}'/public_html> \n\
|
|
AllowOverride all \n\
|
|
Require all granted \n\
|
|
Options +FollowSymLinks \n\
|
|
</Directory> \n\
|
|
\n\
|
|
SetEnv MEDSHAKEEHRPATH '${MEDSHAKE_SHARE_DIR}
|
|
#---------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
RUN . /etc/profile.d/rx3.sh && isl --add ${IMG_URL} \
|
|
&& urpmi.update -a \
|
|
&& urpmi --force wget ssmtp ghostscript pdftk-java php-posix php-bcmath php-curl php-gd php-gnupg php-soap php-yaml php-zip php-phar php-dom php-iconv php-fileinfo php-xmlreader composer git lib64opencl1 \
|
|
&& mkdir /tmp/medshake \
|
|
&& wget -q -O - https://github.com/MedShake/MedShakeEHR-base/archive/refs/tags/v8.4.2.tar.gz | tar xzvf - -C /tmp/medshake \
|
|
&& mv /tmp/medshake/* ${MEDSHAKE_WWW_DIR}.ref \
|
|
&& COMPOSER_ALLOW_SUPERUSER=1 composer install --working-dir ${MEDSHAKE_WWW_DIR}.ref --no-interaction --no-cache -o \
|
|
&& COMPOSER_ALLOW_SUPERUSER=1 composer install --working-dir ${MEDSHAKE_WWW_DIR}.ref/public_html --no-interaction --no-cache -o \
|
|
&& rmdir /tmp/medshake \
|
|
&& echo -e "${MEDSHAKE}" | sed -e "s/\`/'/g" -e 's/ *$//' >/etc/init.d/medshake \
|
|
&& chmod a+x /etc/init.d/medshake \
|
|
&& ln -s /etc/init.d/medshake /etc/rcD.d/S40medshake \
|
|
&& echo -e "${MEDSHAKE_CORE_CONFIG}" | sed -e "s/\`/'/g" -e 's/ *$//' >${MEDSHAKE_CORE_CONFIG_FILE}.ref
|
|
|
|
# && mv /etc/httpd/conf/sites.d/medshake.conf ${MEDSHAKE_CORE_CONFIG_FILE}.ref \
|
|
# && sed -i -e "s%Alias /medshake/%Alias MEDSHAKE_URL%" ${MEDSHAKE_CORE_CONFIG_FILE}.ref \
|
|
|
|
# && wget -q -O - https://getcomposer.org/download/2.2.28/composer.phar >/usr/local/bin/composer \
|
|
# && chmod a+x /usr/local/bin/composer \
|