service-nextcloud/Dockerfile

121 lines
3.8 KiB
Text
Raw Normal View History

2020-07-09 18:47:46 +02:00
# FROM nextcloud:12.0.4
# FROM nextcloud:13.0.12
# FROM nextcloud:16
# FROM nextcloud:17
2020-07-09 19:09:52 +02:00
# FROM nextcloud:18.0.6-apache
2020-10-07 10:16:04 +02:00
# FROM nextcloud:19.0.3-apache
2021-01-04 11:28:51 +01:00
# FROM nextcloud:20.0.0-apache
2021-02-23 15:27:58 +01:00
# FROM nextcloud:20.0.5-apache
2021-07-12 08:49:53 +02:00
# FROM nextcloud:21.0.2-apache
2022-01-09 15:22:56 +01:00
# FROM nextcloud:22.2-apache
2022-05-08 13:40:33 +02:00
# FROM nextcloud:23.0.2-apache
2022-11-15 12:33:48 +01:00
# FROM nextcloud:24.0.2-apache
2023-03-23 08:55:40 +00:00
# FROM nextcloud:25.0.4-apache
2023-08-31 10:15:57 +00:00
# FROM nextcloud:26.0.2-apache
2023-10-06 08:08:20 +00:00
# FROM nextcloud:27.0.2-apache
2023-11-09 16:48:54 +01:00
# FROM nextcloud:27.1.1-apache
2023-11-28 17:59:39 +00:00
# FROM nextcloud:27.1.3-apache
2023-12-18 18:51:56 +00:00
# FROM nextcloud:27.1.4-apache
2024-04-27 19:45:03 +00:00
# FROM nextcloud:28.0.1-apache
2024-09-24 14:30:27 +02:00
# FROM nextcloud:29.0.3-apache
# FROM nextcloud:30.0.4-apache
FROM nextcloud:31.0.0-apache
2022-01-21 10:25:25 +01:00
# This is a stupid comment for a demo (remove later)
2021-01-24 00:52:03 +01:00
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
nano ghostscript \
2021-01-24 00:52:03 +01:00
&& apt-get clean
# clamdscan
2021-11-09 15:27:22 +01:00
#
2021-01-24 00:32:22 +01:00
## Enable REDIS extension
2021-01-24 00:46:35 +01:00
# RUN pecl channel-update pecl.php.net \
# && sh -c "yes '' | pecl install redis" \
# && rm -rf /tmp/pear \
# && rm -f /usr/local/etc/php/glenux-redis.ini \
# && echo "extension=redis.so" >> /usr/local/etc/php/glenux-redis.ini \
# && docker-php-ext-enable redis
2021-01-24 00:32:22 +01:00
## Enable APCU extension
2021-01-24 00:52:03 +01:00
# RUN pecl channel-update pecl.php.net \
# && pecl install apcu-${APCU_VERSION} \
# && rm -f /usr/local/etc/php/glenux-apcu.ini \
# && echo "extension=apcu.so" >> /usr/local/etc/php/glenux-apcu.ini \
# && echo "apc.enable_cli=1" >> /usr/local/etc/php/glenux-apcu.ini \
# && echo "apc.enable=1" >> /usr/local/etc/php/glenux-apcu.ini \
# && docker-php-ext-enable apcu
2021-01-24 00:07:42 +01:00
2019-10-07 19:13:06 +02:00
# Mandatory for bookmark extension
2019-11-19 21:57:26 +01:00
# but missing from deb packages
# RUN apt-get update \
# && apt-get install -y php7.3-gmp
2019-10-07 19:13:06 +02:00
##
## GMP Support (for bookmark extension)
##
2024-05-05 19:06:26 +02:00
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
libgmp3-dev \
&& docker-php-ext-install gmp
2024-01-08 18:21:50 +01:00
##
## BZ2 Support (for nextcloud)
##
2024-05-05 19:06:26 +02:00
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
libbz2-dev \
2024-01-08 18:21:50 +01:00
&& docker-php-ext-install bz2
##
## SVG and LibreSign support
##
2024-05-05 19:06:26 +02:00
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
libmagickcore-6.q16-6-extra \
2022-04-07 09:36:25 +02:00
&& rm -rf /var/lib/apt/lists/*
2021-03-27 17:01:42 +01:00
RUN sed -i'' 's|.*<policy domain="coder".*"PDF".*|<policy domain="coder" rights="read \| write" pattern="PDF" />|g' \
/etc/ImageMagick-6/policy.xml
2021-03-27 17:01:42 +01:00
##
## Raise memory limit for PHP
##
ENV PHP_MEMORY_LIMIT=1024M
ENV PHP_UPLOAD_LIMIT=1800M
RUN echo '[opcache]' > /usr/local/etc/php/conf.d/opcache.ini \
&& echo 'opcache.memory_consumption=256' >> /usr/local/etc/php/conf.d/opcache.ini \
&& echo '[PHP]' > /usr/local/etc/php/conf.d/memory-limit.ini \
&& echo 'memory_limit=1024M' >> /usr/local/etc/php/conf.d/memory-limit.ini
2021-03-27 17:01:42 +01:00
2024-08-13 20:07:22 +02:00
COPY php-uploads.ini /usr/local/etc/php/conf.d/glenux-uploads.ini
COPY php-performance.ini /usr/local/etc/php/conf.d/glenux-performance.ini
COPY php-errors.ini /usr/local/etc/php/conf.d/glenux-errors.ini
2024-08-13 20:11:07 +02:00
RUN echo "LimitRequestBody 0" > /etc/apache2/conf-enabled/nextcloud-fix-413-error.conf
2024-08-13 20:07:22 +02:00
2021-03-27 17:01:42 +01:00
##
## CRON SETUP
##
## Based on https://github.com/nextcloud/docker/tree/master/.examples/dockerfiles/cron/apache
##
RUN echo '*/5 * * * * php -d memory_limit=1024M -f /var/www/html/cron.php' \
> /var/spool/cron/crontabs/www-data
RUN apt-get update && apt-get install -y --no-install-recommends \
2021-03-27 17:01:42 +01:00
supervisor \
&& rm -rf /var/lib/apt/lists/* \
&& mkdir /var/log/supervisord /var/run/supervisord
COPY supervisord.conf /etc/supervisord.conf
2024-07-20 16:54:11 +02:00
# COPY --chmod=755 ./hooks/gx.post-installation.www.sh /app/gx.post-installation.www.sh
# COPY --chmod=755 ./hooks/gx.post-installation.root.sh /docker-entrypoint-hooks.d/post-installation/gx.post-installation.root.sh
2024-07-20 16:47:28 +02:00
2024-07-20 16:54:11 +02:00
COPY --chmod=755 ./hooks/gx.before-starting.www.sh /docker-entrypoint-hooks.d/before-starting/gx.before-starting.www.sh
2021-03-27 17:17:19 +01:00
2021-03-27 17:01:42 +01:00
ENV NEXTCLOUD_UPDATE=1
2022-01-09 15:22:56 +01:00
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"]
2021-03-27 17:01:42 +01:00