Dockerfile 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. FROM alpine:3.23
  2. ENV TZ=UTC
  3. SHELL ["/bin/ash", "-eo", "pipefail", "-c"]
  4. RUN apk add --no-cache \
  5. tzdata \
  6. apache2 php-apache2 \
  7. php php-curl php-gmp php-intl php-mbstring php-xml php-zip \
  8. php-ctype php-dom php-fileinfo php-iconv php-json php-opcache php-openssl php-phar php-session php-simplexml php-xmlreader php-xmlwriter php-xml php-tokenizer php-zlib \
  9. php-pdo_sqlite php-pdo_mysql php-pdo_pgsql \
  10. bash composer curl docker-cli-buildx git gpg make nodejs npm shellcheck shfmt sudo
  11. RUN \
  12. # Disable unwanted Apache modules and configurations
  13. rm -f /etc/apache2/conf.d/languages.conf /etc/apache2/conf.d/info.conf \
  14. /etc/apache2/conf.d/status.conf /etc/apache2/conf.d/userdir.conf && \
  15. sed -r -i "/^\s*LoadModule .*mod_(alias|autoindex|negotiation|status).so$/s/^/#/" \
  16. /etc/apache2/httpd.conf && \
  17. sed -r -i "/^\s*(CustomLog|ErrorLog|Listen) /s/^/#/" \
  18. /etc/apache2/httpd.conf && \
  19. # Enable required Apache modules
  20. sed -r -i "/^\s*#\s*LoadModule .*mod_(deflate|expires|filter|headers|mime|remoteip|setenvif).so$/s/^\s*#//" \
  21. /etc/apache2/httpd.conf
  22. RUN adduser --ingroup www-data --disabled-password developer && \
  23. echo "developer ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/developer
  24. ENV COPY_LOG_TO_SYSLOG=On
  25. ENV COPY_SYSLOG_TO_STDERR=On
  26. ENV CRON_MIN=''
  27. ENV DATA_PATH=''
  28. ENV FRESHRSS_ENV='development'
  29. ENV LISTEN='0.0.0.0:8080'
  30. ENV TRUSTED_PROXY=0
  31. EXPOSE 8080