diff --git a/Caddyfile b/Caddyfile new file mode 100644 index 0000000..1640cc4 --- /dev/null +++ b/Caddyfile @@ -0,0 +1,11 @@ +{ + auto_https off + frankenphp +} + +:8080 { + root * /app/public + encode zstd br gzip + php_server + file_server +} diff --git a/Dockerfile b/Dockerfile index bb7a35b..7e0de39 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,23 @@ -ARG VERSION="latest" -FROM "jcabillot/phpapache:${VERSION}" +FROM dunglas/frankenphp:1-php8.5-alpine LABEL maintainer="Julien Cabillot " SHELL ["/bin/bash", "-o", "pipefail", "-c"] -RUN curl -s -L "https://github.com/RSS-Bridge/rss-bridge/tarball/master/" | tar -zx --strip=1 -RUN echo "*" > "/var/www/html/whitelist.txt" && \ - mkdir -p /var/www/html/cache && \ - chown -R www-data:www-data /var/www/html +WORKDIR /app + +# Install required PHP extensions for RSS-Bridge +RUN install-php-extensions mbstring simplexml curl json iconv + +COPY Caddyfile /etc/frankenphp/Caddyfile + +# Download RSS-Bridge +RUN curl -s -L "https://github.com/RSS-Bridge/rss-bridge/tarball/master/" | tar -zx --strip=1 -C /app/public + +# Configure RSS-Bridge +RUN echo "*" > "/app/public/whitelist.txt" && \ + mkdir -p /app/public/cache && \ + chown -R www-data:www-data /app/public + +RUN chown www-data:www-data /data/caddy && chmod 2770 /data/caddy + +USER www-data diff --git a/renovate.json b/renovate.json index d04175d..c3c6eb9 100644 --- a/renovate.json +++ b/renovate.json @@ -3,14 +3,14 @@ "customManagers": [ { "customType": "regex", - "description": "Detect ARG VERSION pin for jcabillot/phpapache base image", + "description": "Detect ARG VERSION pin for dunglas/frankenphp base image", "managerFilePatterns": [ "/^Dockerfile$/" ], "matchStrings": [ "ARG\\s+VERSION=\"(?[^\"]+)\"" ], - "depNameTemplate": "jcabillot/phpapache", + "depNameTemplate": "dunglas/frankenphp", "datasourceTemplate": "docker" } ]