118 lines
3.3 KiB
Docker
118 lines
3.3 KiB
Docker
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"
|