docker-GLPI/web-builder/Dockerfile
2024-03-28 18:20:48 +01:00

82 lines
2.7 KiB
Docker

FROM alpine
MAINTAINER Benoit LORAND <benoit.lorand@blorand.org>
WORKDIR /root
ENV GLPI_CONFIG_DIR=/etc/glpi
ENV GLPI_VAR_DIR=/var/lib/glpi
ENV GLPI_LOG_DIR=/var/log/glpi
ENV GLPI_VERSION=10.0.14
ENV FIELDS_VERSION=1.21.8
ENV DATAINJECTION_VERSION=2.13.5
ENV GLPIINVENTORY_VERSION=1.3.5
RUN \
apk add --no-cache \
php82-apache2 \
php82 \
mariadb-client \
php82-pecl-apcu \
php82-pecl-redis \
php82-mysqli \
php82-gd \
php82-intl \
php82-ldap \
php82-xml \
php82-xmlreader \
php82-xmlwriter \
php82-exif \
php82-zip \
php82-bz2 \
php82-opcache \
php82-pear \
php82-curl \
php82-dom \
php82-pdo \
php82-json \
php82-session \
php82-ctype \
php82-fileinfo \
php82-mbstring \
php82-simplexml \
php82-iconv \
php82-sodium \
php82-imap \
php82-pdo \
php82-pdo_mysql \
php82-pspell \
php82-phar \
patch
COPY CAS-1.3.8.tgz /root/
RUN pear82 install /root/CAS-1.3.8.tgz && \
pear82 install Archive_Tar
COPY httpd.conf /etc/apache2
COPY remoteip.conf /etc/apache2/conf.d
COPY service/ /etc/service/
COPY glpi.cron /var/spool/cron/crontabs/apache
ADD https://github.com/glpi-project/glpi/releases/download/${GLPI_VERSION}/glpi-${GLPI_VERSION}.tgz /root/glpi-${GLPI_VERSION}.tgz
ADD https://github.com/pluginsGLPI/fields/releases/download/${FIELDS_VERSION}/glpi-fields-${FIELDS_VERSION}.tar.bz2 /root/glpi-fields-${FIELDS_VERSION}.tar.bz2
ADD https://github.com/pluginsGLPI/datainjection/releases/download/${DATAINJECTION_VERSION}/glpi-datainjection-${DATAINJECTION_VERSION}.tar.bz2 /root/glpi-datainjection-${DATAINJECTION_VERSION}.tar.bz2
ADD https://github.com/glpi-project/glpi-inventory-plugin/releases/download/${GLPIINVENTORY_VERSION}/glpi-glpiinventory-${GLPIINVENTORY_VERSION}.tar.bz2 /root/glpi-glpiinventory-${GLPIINVENTORY_VERSION}.tar.bz2
RUN \
mkdir -p /root/glpi_template/etc /root/glpi_template/files && \
tar -x -f /root/glpi-${GLPI_VERSION}.tgz && \
cp -r /root/glpi/config/. /root/glpi_template/etc/. && \
cp -r /root/glpi/files/. /root/glpi_template/files/. && \
rm -r /root/glpi/config /root/glpi/files && \
mv /root/glpi /var/www/glpi && \
cd /var/www/glpi/marketplace && \
tar x -f /root/glpi-fields-${FIELDS_VERSION}.tar.bz2 && \
tar x -f /root/glpi-datainjection-${DATAINJECTION_VERSION}.tar.bz2 && \
tar x -f /root/glpi-glpiinventory-${GLPIINVENTORY_VERSION}.tar.bz2 && \
chmod 600 /etc/crontabs/apache && \
rm -f /var/www/html/* /root/CAS-1.3.8.tgz /root/glpi-${GLPI_VERSION}.tgz /root/glpi-fields-${FIELDS_VERSION}.tar.bz2 /root/glpi-datainjection-${DATAINJECTION_VERSION}.tar.bz2 /root/glpi-glpiinventory-${GLPIINVENTORY_VERSION}.tar.bz2 && \
rm -rf /tmp/* /var/tmp/*
COPY logo.png /var/www/glpi/pics/logo.png
WORKDIR /var/www/glpi
ENTRYPOINT ["/etc/service/glpi"]