diff options
| author | 2020-12-30 15:42:32 +0100 | |
|---|---|---|
| committer | 2020-12-30 15:42:32 +0100 | |
| commit | 85f5dd4bef40419d5b63b0e845af3f09a6fb7f1b (patch) | |
| tree | 2cd5330713649e1ac6536c2a77f0f35541c9746f /Docker | |
| parent | 99c3263cbeefb916bc362f4e0550ba1267bcb7fb (diff) | |
Docker new :newest image (#3294)
* Docker new :Edge image
New optional Docker image to test upcoming software versions, using
Alpine:Edge
Similar than https://github.com/FreshRSS/FreshRSS/pull/3274 (oldest
image) but for newest.
Usefull for e.g. testing PHP8
https://github.com/FreshRSS/FreshRSS/issues/3082 , MySQL 8
https://github.com/FreshRSS/FreshRSS/issues/3191
* Syntax if symlink already exists in future edge
* Rename to newest
Better match our "Oldest" version, and to avoid conflicts with the
potential renaming of our master branch
* Update Docker/Dockerfile-Newest
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
Diffstat (limited to 'Docker')
| -rw-r--r-- | Docker/Dockerfile-Newest | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/Docker/Dockerfile-Newest b/Docker/Dockerfile-Newest new file mode 100644 index 000000000..9b7d940fd --- /dev/null +++ b/Docker/Dockerfile-Newest @@ -0,0 +1,60 @@ +FROM alpine:edge + +ENV TZ UTC +SHELL ["/bin/ash", "-eo", "pipefail", "-c"] +RUN apk add --no-cache \ + apache2 php8-apache2 \ + php8 php8-curl php8-gmp php8-intl php8-mbstring php8-xml php8-zip \ + php8-ctype php8-dom php8-fileinfo php8-iconv php8-json php8-opcache php8-phar php8-session php8-simplexml php8-xmlreader php8-xmlwriter php8-tokenizer php8-zlib \ + php8-pdo_sqlite php8-pdo_mysql php8-pdo_pgsql + +RUN mkdir -p /var/www/FreshRSS /run/apache2/ +WORKDIR /var/www/FreshRSS + +COPY . /var/www/FreshRSS +COPY ./Docker/*.Apache.conf /etc/apache2/conf.d/ + +ARG FRESHRSS_VERSION +ARG SOURCE_BRANCH +ARG SOURCE_COMMIT + +LABEL \ + org.opencontainers.image.authors="Alkarex" \ + org.opencontainers.image.description="A self-hosted RSS feed aggregator" \ + org.opencontainers.image.documentation="https://freshrss.github.io/FreshRSS/" \ + org.opencontainers.image.licenses="AGPL-3.0" \ + org.opencontainers.image.revision="${SOURCE_BRANCH}.${SOURCE_COMMIT}" \ + org.opencontainers.image.source="https://github.com/FreshRSS/FreshRSS" \ + org.opencontainers.image.title="FreshRSS" \ + org.opencontainers.image.url="https://freshrss.org/" \ + org.opencontainers.image.vendor="FreshRSS" \ + org.opencontainers.image.version="$FRESHRSS_VERSION" + +RUN rm -f /etc/apache2/conf.d/languages.conf /etc/apache2/conf.d/info.conf \ + /etc/apache2/conf.d/status.conf /etc/apache2/conf.d/userdir.conf && \ + sed -r -i "/^\s*LoadModule .*mod_(alias|autoindex|negotiation|status).so$/s/^/#/" \ + /etc/apache2/httpd.conf && \ + sed -r -i "/^\s*#\s*LoadModule .*mod_(deflate|expires|headers|mime|remoteip|setenvif).so$/s/^\s*#//" \ + /etc/apache2/httpd.conf && \ + sed -r -i "/^\s*(CustomLog|ErrorLog|Listen) /s/^/#/" \ + /etc/apache2/httpd.conf && \ + # https://bugs.php.net/bug.php?id=78681 \ + sed -r -i "s/php8_module/php_module/" \ + /etc/apache2/conf.d/php8-module.conf && \ + if [ ! -f /usr/bin/php ]; then ln -s /usr/bin/php8 /usr/bin/php; else true; fi && \ + touch /var/www/FreshRSS/Docker/env.txt && \ + echo "27,57 * * * * . /var/www/FreshRSS/Docker/env.txt; \ + su apache -s /bin/sh -c 'php /var/www/FreshRSS/app/actualize_script.php' \ + 2>> /proc/1/fd/2 > /tmp/FreshRSS.log" | crontab - + +ENV COPY_LOG_TO_SYSLOG On +ENV COPY_SYSLOG_TO_STDERR On +ENV CRON_MIN '' +ENV FRESHRSS_ENV '' + +ENTRYPOINT ["./Docker/entrypoint.sh"] + +EXPOSE 80 +# hadolint ignore=DL3025 +CMD ([ -z "$CRON_MIN" ] || crond -d 6) && \ + exec httpd -D FOREGROUND |
