Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

62 lines
2.4KB

  1. FROM bingen/amd64-nginx-php
  2. ENV DEBIAN_FRONTEND=noninteractive
  3. ARG NEXTCLOUD_VERSION
  4. ARG NEXTCLOUD_DATA_PATH
  5. ARG NEXTCLOUD_BACKUP_PATH
  6. RUN \
  7. wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg && \
  8. apt-get update && \
  9. apt-get install -y wget bzip2 vim rsync mariadb-client cron sudo php-imagick && \
  10. apt-get clean
  11. # Change upload-limits and -sizes
  12. RUN sed -i "s/upload_max_filesize = 2M/upload_max_filesize = 2048M/g" /etc/php/7.2/fpm/php.ini && \
  13. sed -i "s/post_max_size = 8M/post_max_size =root123 2048M/g" /etc/php/7.2/fpm/php.ini && \
  14. echo 'default_charset = "UTF-8"' >> /etc/php/7.2/fpm/php.ini && \
  15. echo "upload_tmp_dir = ${NEXTCLOUD_DATA_PATH}" >> /etc/php/7.2/fpm/php.ini && \
  16. echo "extension = apc.so" >> /etc/php/7.2/fpm/php.ini && \
  17. echo "apc.enabled = 1" >> /etc/php/7.2/fpm/php.ini && \
  18. echo "apc.include_once_override = 0" >> /etc/php/7.2/fpm/php.ini && \
  19. echo "apc.shm_size = 256" >> /etc/php/7.2/fpm/php.ini
  20. # now add our hand-written nginx-default-configuration which makes use of all the stuff so far prepared
  21. COPY default /etc/nginx/sites-available/default
  22. # PHP config
  23. COPY php_nc.ini /tmp/php_nc.ini
  24. RUN cat /tmp/php_nc.ini >> /etc/php/7.2/fpm/php.ini && \
  25. cat /tmp/php_nc.ini >> /etc/php/7.2/cli/php.ini
  26. # https://docs.nextcloud.com/server/13/admin_manual/installation/source_installation.html#php-fpm-tips-label
  27. RUN sed -i 's/^;env/env/g' /etc/php/7.2/fpm/pool.d/www.conf
  28. # Create the data-directory where NEXTCLOUD can store its stuff
  29. RUN mkdir -p "${NEXTCLOUD_DATA_PATH}" && \
  30. chown -R www-data:www-data "${NEXTCLOUD_DATA_PATH}" && \
  31. mkdir -p "${NEXTCLOUD_BACKUP_PATH}"
  32. # finally, download NEXTCLOUD and extract it
  33. RUN mkdir -p /var/www
  34. WORKDIR /var/www
  35. RUN wget https://download.nextcloud.com/server/releases/${NEXTCLOUD_VERSION}.tar.bz2 && \
  36. tar xvf ${NEXTCLOUD_VERSION}.tar.bz2 && \
  37. chown -R www-data:www-data nextcloud && \
  38. rm ${NEXTCLOUD_VERSION}.tar.bz2
  39. WORKDIR /
  40. COPY docker-entrypoint.sh /usr/local/bin/entrypoint.sh
  41. RUN chmod +x /usr/local/bin/entrypoint.sh
  42. COPY backup.sh /etc/cron.daily/backup
  43. RUN chmod +x /etc/cron.daily/backup
  44. RUN (crontab -l 2>/dev/null; echo "*/5 * * * * php -f /var/www/nextcloud/cron.php") | crontab -u www-data -
  45. #VOLUME ${NEXTCLOUD_DATA_PATH}
  46. #VOLUME ${NEXTCLOUD_BACKUP_PATH}
  47. ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
  48. CMD service php7.2-fpm start && nginx
  49. #CMD ["service", "php7.2-fpm", "start", "&&", "nginx"]