|
1 | 1 | FROM lwthiker/curl-impersonate:0.5-ff-slim-buster AS curlimpersonate
|
2 | 2 |
|
3 |
| -FROM php:8.0.27-fpm-buster AS rssbridge |
| 3 | +FROM debian:12-slim AS rssbridge |
4 | 4 |
|
5 | 5 | LABEL description="RSS-Bridge is a PHP project capable of generating RSS and Atom feeds for websites that don't have one."
|
6 | 6 | LABEL repository="https://github.com/RSS-Bridge/rss-bridge"
|
7 | 7 | LABEL website="https://github.com/RSS-Bridge/rss-bridge"
|
8 | 8 |
|
| 9 | +ARG DEBIAN_FRONTEND=noninteractive |
9 | 10 | RUN apt-get update && \
|
10 | 11 | apt-get install --yes --no-install-recommends \
|
| 12 | + ca-certificates \ |
11 | 13 | nginx \
|
12 |
| - zlib1g-dev \ |
13 |
| - libzip-dev \ |
14 |
| - libmemcached-dev \ |
15 | 14 | nss-plugin-pem \
|
16 |
| - libicu-dev && \ |
17 |
| - docker-php-ext-install zip && \ |
18 |
| - docker-php-ext-install intl && \ |
19 |
| - pecl install memcached && \ |
20 |
| - docker-php-ext-enable memcached && \ |
21 |
| - docker-php-ext-enable opcache && \ |
22 |
| - mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" |
23 |
| - |
24 |
| -COPY ./config/nginx.conf /etc/nginx/sites-enabled/default |
25 |
| - |
26 |
| -COPY --chown=www-data:www-data ./ /app/ |
| 15 | + php-curl \ |
| 16 | + php-fpm \ |
| 17 | + php-intl \ |
| 18 | + # php-json is enabled by default with PHP 8.2 in Debian 12 |
| 19 | + php-mbstring \ |
| 20 | + php-memcached \ |
| 21 | + # php-opcache is enabled by default with PHP 8.2 in Debian 12 |
| 22 | + # php-openssl is enabled by default with PHP 8.2 in Debian 12 |
| 23 | + php-sqlite3 \ |
| 24 | + php-xml \ |
| 25 | + php-zip \ |
| 26 | + # php-zlib is enabled by default with PHP 8.2 in Debian 12 |
| 27 | + && \ |
| 28 | + rm -rf /var/lib/apt/lists/* |
| 29 | + |
| 30 | +# logs should go to stdout / stderr |
| 31 | +RUN ln -sfT /dev/stderr /var/log/nginx/error.log; \ |
| 32 | + ln -sfT /dev/stdout /var/log/nginx/access.log; \ |
| 33 | + chown -R --no-dereference www-data:adm /var/log/nginx/ |
27 | 34 |
|
28 | 35 | COPY --from=curlimpersonate /usr/local/lib/libcurl-impersonate-ff.so /usr/local/lib/curl-impersonate/
|
29 |
| - |
30 | 36 | ENV LD_PRELOAD /usr/local/lib/curl-impersonate/libcurl-impersonate-ff.so
|
31 |
| - |
32 | 37 | ENV CURL_IMPERSONATE ff91esr
|
33 | 38 |
|
| 39 | +COPY ./config/nginx.conf /etc/nginx/sites-available/default |
| 40 | +COPY ./config/php-fpm.conf /etc/php/8.2/fpm/pool.d/rss-bridge.conf |
| 41 | +COPY ./config/php.ini /etc/php/8.2/fpm/conf.d/90-rss-bridge.conf |
| 42 | + |
| 43 | +COPY --chown=www-data:www-data ./ /app/ |
| 44 | + |
34 | 45 | EXPOSE 80
|
35 | 46 |
|
36 | 47 | ENTRYPOINT ["/app/docker-entrypoint.sh"]
|
0 commit comments