aboutsummaryrefslogtreecommitdiff
path: root/Docker
AgeCommit message (Collapse)Author
2025-08-09Docker Alpine PHP 8.4 (#7803)Gravatar Alexandre Alapetite
Force our Alpine-based Docker image to PHP 8.4 (default is still PHP 8.3). Related to the fact that we may have to [revert our Debian image to Debian 12 with PHP 8.2 instead of Debian 13 with PHP 8.4](https://github.com/FreshRSS/FreshRSS/pull/7805), so for the next FreshRSS release, we can offer at least one image with PHP 8.4.
2025-08-09Docker revert to Debian 12 Bookworm (#7805)Gravatar Alexandre Alapetite
Fix https://github.com/FreshRSS/FreshRSS/issues/7798 Revert https://github.com/FreshRSS/FreshRSS/pull/7772 Revert https://github.com/FreshRSS/FreshRSS/commit/af6f7f013ae5b908520aa0d9fb0e0b56247ff026
2025-08-08Optimize how much data needs to be `chown`/`chmod`ed on container startup ↵Gravatar Carey Metcalfe
(#7793) * Optimize how much data needs to be `chown`/`chmod`ed on container startup This works around an issue where `chmod`/`chown` operations inside a container can be extremely slow when using the `overlay2` storage driver, resulting in 10min+ container startup times. It modifies the owner of the webapp when building the container so that only the `data` and `extensions` directories (which are commonly mapped as volumes into the container) have to be modified by the `access-permissions.sh` script at container startup. When not running via docker the behaviour of the `access-permissions.sh` script is unchanged. * Take DATA_PATH environment variable into account when fixing permissions * Revert change to using bash for arrays (the alpine image doesn't include `bash`) * A few more improvements * Slightly tweak reapply permissions variable - lowercase to indicate it's not an env variable - use 0/1 to address potentially-irrational paranoia about unset variables * Remove conditional logic to skip reapplying permissions Also documents why in a comment so it's not missed in the future. --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2025-08-01Docker dev image :newest updated to PHP 8.5 (#7773)Gravatar Alexandre Alapetite
Now that PHP 8.4 is covered by our main Debian image https://github.com/FreshRSS/FreshRSS/pull/7772, let's bump the :newest dev image to PHP 8.5. Note: OPCache is now included in the core https://wiki.php.net/rfc/make_opcache_required No other apparent breaking change.
2025-08-01Docker: Debian 13 RC with PHP 8.4 (#7772)Gravatar Alexandre Alapetite
Help final testing of Debian 13 Trixie before the release (9 August) https://lists.debian.org/debian-devel-announce/2025/07/msg00003.html PHP 8.4.10, Apache 2.4.64 I will make another PR after the release to update to `debian:13-slim` when it gets available.
2025-07-09Docker: interpolate FRESHRSS_INSTALL and FRESHRSS_USER variables (#7725)Gravatar Tarow
Closes https://github.com/FreshRSS/FreshRSS/issues/7300 Interpolate `FRESHRSS_INSTALL` and `FRESHRSS_USER` at runtime to allow secrets being passed as environment variables
2025-06-03Docker: Alpine 3.22 (#7627)Gravatar Alexandre Alapetite
https://alpinelinux.org/posts/Alpine-3.22.0-released.html PHP 8.3.21, Apache 2.4.63
2025-03-13Add check for Apache mod_filter to ensure "AddOutputFilterByType" works. (#7419)Gravatar Dezponia
* Update .htaccess Add check for Apache mod_filter to ensure "AddOutputFilterByType" works. * Explicit enabling mod_filter in our Docker images --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2025-02-19Docker Compose remove deprecated version (#7309)Gravatar Alexandre Alapetite
Minor doc
2025-01-25Ligth update Docker Compose (#7249)Gravatar Alexandre Alapetite
I just saw some users getting confused about the build section despite of the comment, so commented out by default https://github.com/FreshRSS/FreshRSS/discussions/7246#discussioncomment-11908948
2025-01-25Doc changed default_user to default-user (#7238)Gravatar Max Bretschneider
2025-01-13Docker Compose Traefik 3 (#7219)Gravatar Alexandre Alapetite
Use :3 instead of `3.0` to avoid having to update the documentation too often. Follow-up of https://github.com/FreshRSS/FreshRSS/pull/6401
2024-12-27Adds BASE_URL to example .env file (#7151)Gravatar Christopher Moss
* Adds BASE_URL to example .env file I found without specifying a BASE_URL then the installation command gets confused ❌ FreshRSS error during installation! FreshRSS error: invalid input: default-user cannot be empty The provided example base url may not be desired, but the readme should be updated with 'something' to make first use more user friendly. * Update Docker/README.md --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-12-07Docker: Alpine 3.21 (#7070)Gravatar Alexandre Alapetite
PHP 8.3.14, Apache/2.4.62 https://alpinelinux.org/posts/Alpine-3.21.0-released.html
2024-10-11Apache protect more non-public folders and files (#6881)Gravatar Alexandre Alapetite
* Apache protect more non-public folders * Also protect root * Do the same for /p/ * Simplify Require all denied In case of Apache 2.2, it will just make an error 500 instead of 403 * .htaccess.dist * Simplify * Better comment
2024-09-28PostgreSQL 17 (#6835)Gravatar Alexandre Alapetite
https://www.postgresql.org/about/news/postgresql-17-released-2936/
2024-09-23Docker entrypoint optimize find sed (#6827)Gravatar Alexandre Alapetite
Single `find` and single `sed` command instead of 3
2024-09-21Docker LegacyKeyValueFormat (#6819)Gravatar Alexandre Alapetite
* Docker LegacyKeyValueFormat https://docs.docker.com/reference/build-checks/legacy-key-value-format/ * Also for devcontainer
2024-09-06Upgrade to PHP 8.1 (#6711)Gravatar Alexandre Alapetite
* Upgrade to PHP 8.1 As discussed in https://github.com/FreshRSS/FreshRSS/discussions/5474 https://www.php.net/releases/8.0/en.php https://www.php.net/releases/8.1/en.php Upgrade to available native type declarations https://php.net/language.types.declarations Upgrade to https://phpunit.de/announcements/phpunit-10.html which requires PHP 8.1+ (good timing, as version 9 was not maintained anymore) Upgrade `:oldest` Docker dev image to oldest Alpine version supporting PHP 8.1: Alpine 3.16, which includes PHP 8.1.22. * Include 6736 https://github.com/FreshRSS/FreshRSS/pull/6736
2024-08-26OIDC changelog + minor whitespaceGravatar Alexandre Alapetite
+fix minor whitespace from https://github.com/FreshRSS/FreshRSS/pull/6730
2024-08-25Fix OIDC session params definition (#6730)Gravatar pando85
* Fix OIDC session params definition - standardize environment variable names - group all in the same configuration file - use mod_auth_openidc default values - fix `OIDCSessionMaxDuration` because it was not set with the previous code - add documentation * Add double quoting to prevent globbing and word splitting * Revert line deleted by mistake
2024-08-14Update about running tests (#6709)Gravatar Alexandre Alapetite
2024-08-14add OIDCSessionMaxDuration and OIDCSessionInactivityTimeout (#6642)Gravatar нездалисько
* add OIDCSessionMaxDuration and OIDCSessionInactivityTimeout * entrypoint.sh OIDCSessionMaxDuration and Session fix * fix: entrypoint.sh OIDCSessionMaxDuration and OIDCSessionInactivityTimeout and Alpine support * Use Apache config file instead * Spelling * fixed after restarting the double OIDC lines * Refactor --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-07-18Re-enable OPCache for PHP 8.4-alpha2 (#6637)Gravatar Alexandre Alapetite
Support https://www.php.net/index.php#2024-07-18-1 Follow-up of https://github.com/FreshRSS/FreshRSS/pull/6615 Bug https://github.com/php/php-src/issues/14873 was fixed https://github.com/nielsdos/php-src/commit/3d0885f9e54ba46bbb082df4c9c32f0be98ee423
2024-07-09Initial support for PHP 8.4 (#6615)Gravatar Alexandre Alapetite
* Initial support for PHP 8.4 Sole fix needed so far seems to be related to https://wiki.php.net/rfc/deprecate-implicitly-nullable-types See also upstream PR https://github.com/PhpGt/CssXPath/pull/227 We are also hitting was seems to be a PHP bug https://github.com/php/php-src/issues/14873 * Fix return type * Disable OPCache while waiting for PHP fix
2024-06-05Docker Alpine 3.20 (#6477)Gravatar Alexandre Alapetite
https://alpinelinux.org/posts/Alpine-3.20.0-released.html Moving from PHP 8.2.19 to PHP 8.3.7, still with Apache/2.4.59
2024-05-01Docker: Traefik 3.0 (#6401)Gravatar Alexandre Alapetite
https://github.com/traefik/traefik/releases/tag/v3.0.0 https://doc.traefik.io/traefik/v3.0/migration/v2-to-v3/
2024-04-30CLI database backup and restore (#6387)Gravatar Alexandre Alapetite
* CLI database backup and restore Can also be used to migrate from one database to another (e.g. MySQL to PostgreSQL) or to ease upgrade to a major PostgreSQL version (e.g. 15 to 16). * +x * Fix some cases * Update to docker-compose-v2 * More documentation
2024-03-19Fix CLI install regressions (#6214)Gravatar Alexandre Alapetite
* Fix CLI install with prefix It was not possible to pass a blank prefix * Fix regression EXIT_CODE_ALREADY_EXISTS The dedicated exit code was not sent anymore when a user already exists
2024-02-17Traefik 2.11 in docker-compose example (#6098)Gravatar Alexandre Alapetite
https://github.com/traefik/traefik/releases/tag/v2.11.0
2023-12-30Docker Debian disable unused PHP modules (#5994)Gravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/5993
2023-12-10Alpine 3.19 (#5933)Gravatar Alexandre Alapetite
https://alpinelinux.org/posts/Alpine-3.19.0-released.html Apache/2.4.58, PHP 8.2.13
2023-11-21Improve filtering of Cron env variables (#5898)Gravatar Alexandre Alapetite
Avoid keeping environment variables used for init. Improvement of https://github.com/FreshRSS/FreshRSS/pull/5795 Spotted when checking https://github.com/FreshRSS/FreshRSS/issues/5894
2023-11-18Fix PHP 7 compatibility strict_types (#5893)Gravatar Alexandre Alapetite
* Fix PHP 7 compatibility https://github.com/FreshRSS/FreshRSS/discussions/5892 * Multiple PHP 7 fixes * PHPStan
2023-11-10Document Traefik PathPrefix (#5845)Gravatar Alexandre Alapetite
2023-11-08Update WebSub documentation a bit (#5829)Gravatar Alexandre Alapetite
* Update WebSub documentation a bit * Marien prefers not to promote his hub too much :-)
2023-11-05Fix FreshRSS logo link on Docker HubGravatar Alexandre Alapetite
The link resolution does not seem to be supported automatically Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5819
2023-11-05Try automatic update of Docker descriptionGravatar Alexandre Alapetite
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5819
2023-11-05add multi arch docker build (#5808)Gravatar Benjamin Reich
* Add multi arch container build Co-authored-by: EdJoPaTo <rfc-conform-git-commit-email@funny-long-domain-label-everyone-hates-as-it-is-too-long.edjopato.de> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> * using label from github action * dont remove static labels and split docker readme in seperate action * pin 3rd party action to a commit * enable pushing to dockerhub * Update .github/workflows/build-images.yml Co-authored-by: EdJoPaTo <github@edjopato.de> * remove not needed checkout * set github token permissions * Update .github/workflows/push-dockerhub-readme.yml * update docker readme to match new tags * Apply suggestions from code review * fix suffix for alpine image * fix suffix for alpine image * push images only at upstream repo * push images only at upstream repo * push images only at upstream repo * tag latest-alpine as alpine * tag latest-alpine as alpine * remove no needed falvor * keep falvor for build * Clean more things * Rename action To use same default name than https://github.com/actions/starter-workflows/blob/main/ci/docker-publish.yml * Rename readme action To use same default name than https://github.com/peter-evans/dockerhub-description/blob/main/.github/workflows/dockerhub-description.yml * Use default name for dockerhub-description https://github.com/peter-evans/dockerhub-description/blob/main/.github/workflows/dockerhub-description.yml Plus minor wording * Experiment with build-args * Debug * Add checkout back * Revert back to metadata-action * Remove quotes in version * Try to fix variables * Experiment with automatic label values again * Delete last Docker Hub hooks * Use only git SHA for org.opencontainers.image.revision https://specs.opencontainers.org/image-spec/annotations/#pre-defined-annotation-keys * Comment out semver for now Might be enabled later if desired * Enable major semver --------- Co-authored-by: EdJoPaTo <rfc-conform-git-commit-email@funny-long-domain-label-everyone-hates-as-it-is-too-long.edjopato.de> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> Co-authored-by: EdJoPaTo <github@edjopato.de>
2023-10-31Fix Docker CRON_MIN for env with special characters (#5795)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/5792 regression from https://github.com/FreshRSS/FreshRSS/pull/5772
2023-10-30Require PHP 7.4+ (#5720)Gravatar Alexandre Alapetite
* Require PHP 7.4+ https://github.com/FreshRSS/FreshRSS/discussions/5474 * Update Docker oldest Alpine 3.13 with PHP 7.4.26 * Add missing packets to Docker oldest * Update to typed properties https://php.net/migration74.new-features#migration74.new-features.core.typed-properties * More types
2023-10-29Export all environment variables to cron (#5772)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/5770 Note, the syntax complying with https://www.shellcheck.net/wiki/SC2002 does not seem to work in ash / Alpine
2023-10-28Prepare Alpine OIDC (#5764)Gravatar Alexandre Alapetite
* Prepare Alpine OIDC * Prepare syntax for OpenID Connect in Alpine. * Update :newest Alpine development image to PHP 8.3 * Fix a little bug in test of OIDC_SCOPES * Changelog + syntax * shellchecks
2023-10-27OIDC_SCOPES compatibility colon (#5753)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/5744
2023-10-25Use RemoteIPInternalProxy directive of remoteip Apache module (#5740)Gravatar Mossroy
* Use RemoteIPInternalProxy directive of remoteip Apache module instead of RemoteIPTrustedProxy directive To allow internal IPs to be trusted: for internal clients, and also for the case of chained internal reverse-proxies Fixes #5726 * One last reference forgotten --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-10-25Avoid a warning on non-numeric TRUSTED_PROXY en var (#5733)Gravatar Mossroy
* Update entrypoint.sh to avoid a warning on non-numeric TRUSTED_PROXY env var Fixes #5732 5732 * Use POSIX-compatible syntax * Fix POSIX syntax
2023-09-24docker-compose PostgreSQL 16 (#5661)Gravatar Alexandre Alapetite
https://www.postgresql.org/about/news/postgresql-16-released-2715/ Watch out, there are no auto-updates between major versions
2023-09-09Docker MySQL update doc (#5639)Gravatar Alexandre Alapetite
Remove obsolete parameter not needed anymore now that all our images are using PHP 8+
2023-07-30Rework trusted proxies (#5549)Gravatar Alexandre Alapetite
* Rework trusted proxies Fix https://github.com/FreshRSS/FreshRSS/issues/5502 Follow-up of https://github.com/FreshRSS/FreshRSS/pull/3226 New environment variable `TRUSTED_PROXY`: set to 0 to disable, or to a list of trusted IP ranges compatible with https://httpd.apache.org/docs/current/mod/mod_remoteip.html#remoteiptrustedproxy New internal environment variable `CONN_REMOTE_ADDR` to remember the true IP address of the connection (e.g. last proxy), even when using mod_remoteip. Current working setups should not observe any significant change. * Minor whitespace * Safer trusted sources during install Rework of https://github.com/FreshRSS/FreshRSS/pull/5358 https://github.com/FreshRSS/FreshRSS/issues/5357 * Minor readme
2023-07-19Docker: Add DATA_PATH to cron env (#5531)Gravatar Zhaofeng Li