FROM debian:stable-slim ARG BRANCH=25.x ARG UID=1000 ARG GID=1000 ARG PHP_VERSION=7.4 RUN apt update && apt dist-upgrade -y ## Install Diferent PHP version RUN apt-get -y install lsb-release ca-certificates curl RUN curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg RUN sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' RUN apt-get update ## IF tesseract #RUN apt install -y \ # tesseract-ocr tesseract-ocr-spa sudo ## IF R #RUN apt install -y r-base r-base-dev r-recommended RUN apt install -y imagemagick ffmpeg python3 \ unoconv RUN apt remove -y php-cli && \ apt install -y php${PHP_VERSION}-cli RUN apt update -y && apt install -y \ php${PHP_VERSION}-gd php${PHP_VERSION}-curl php${PHP_VERSION}-intl php${PHP_VERSION}-zip php${PHP_VERSION}-bcmath \ sqlite3 php${PHP_VERSION}-sqlite3 build-essential elinks unzip xlsx2csv psutils RUN apt install -y php${PHP_VERSION}-memcached php${PHP_VERSION}-memcached php${PHP_VERSION}-intl php${PHP_VERSION}-gd \ php${PHP_VERSION}-mysql php${PHP_VERSION}-ldap php${PHP_VERSION}-zip \ php${PHP_VERSION}-fpm php${PHP_VERSION}-mysql php${PHP_VERSION}-mbstring php${PHP_VERSION}-bz2 php-dompdf php${PHP_VERSION}-xml php${PHP_VERSION}-redis \ curl RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \ php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" && \ php composer-setup.php && \ php -r "unlink('composer-setup.php');" RUN mv composer.phar /usr/local/bin/composer RUN ln -s /usr/bin/python3 /usr/bin/python RUN apt install -y \ apache2 apache2-utils libapache2-mod-php${PHP_VERSION} COPY ./envvars /etc/apache2/envvars RUN chmod -R 777 /etc/ssl/private RUN a2enmod rewrite alias authz_user ssl RUN addgroup --gid ${GID} tikiwiki RUN adduser \ --system \ --uid ${UID} \ --gid ${GID} \ --shell /bin/bash \ #--shell /usr/sbin/nologin \ --gecos 'Tikiwiki' \ --disabled-password \ --home /var/www/html/tiki \ tikiwiki RUN adduser www-data tikiwiki WORKDIR /var/www/html/tiki RUN update-alternatives --install /usr/bin/php php /usr/bin/php${PHP_VERSION} 99 --force RUN update-alternatives --set php /usr/bin/php${PHP_VERSION} RUN apt install -y vim git && \ apt autoremove && apt clean USER tikiwiki RUN git clone -b ${BRANCH} https://gitlab.com/tikiwiki/tiki.git . # Fix LDAP.php ADD patch/ldap.php lib/auth/ldap.php RUN rm -rf .git # Solucion temporal ( para 26.x ) #COPY packages/* vendor_custom/ #RUN chmod -R 777 vendor_custom #RUN cd vendor_custom && \ # find . -name "*.zip" | while read filename; do unzip $filename; done; #RUN cd vendor_custom && rm -rf *.zip RUN sh setup.sh -n composer #ADD composer.json composer.json #RUN composer --prefer-dist update ADD entrypoint.sh /entrypoint.sh RUN mkdir -p files/forums && chmod -R 777 files/forums RUN mkdir -p /tmp/run/apache2 && \ mkdir -p /tmp/lock/apache2 && \ mkdir -p /tmp/log/apache2 #USER root ADD start.sh /start.sh VOLUME ["/uploads"] ENTRYPOINT [ "/bin/sh", "/entrypoint.sh" ] CMD "/start.sh"