Skip to content

Update base images, s6-overlay, phpredis and actions for security fixes - #59

Merged
TrystanLea merged 1 commit into
masterfrom
update-dependencies
Oct 21, 2026
Merged

TrystanLea merged 1 commit into
masterfrom
update-dependencies

Conversation

@TrystanLea

Copy link
Copy Markdown
Member

Brings the Docker build up to date so the published image picks up current security fixes, including PHP 8.4.27 for GHSA-w8hw-w9fx-j79w (CVE-2026-109618, critical RCE).

Changes

Component Was Now Notes
MariaDB 11.0 11.8 11.0 is EOL; image last updated May 2024. 11.8 is the current LTS.
Redis 7.0 8 7.0 is EOL; image last updated Sep 2024.
s6-overlay 3.1.6.2 3.2.3.2 See below
phpredis develop branch (unpinned) 6.3.0 Pinned via PHPREDIS_VERSION build arg
actions/checkout v4 v7
docker/login-action v3 v4
docker/build-push-action v5 v7

php:8.4-apache and eclipse-mosquitto:2.0 are left as they are. Both tags still get updates, and a rebuild with --pull now gets PHP 8.4.27.

s6-overlay bundle location

s6-overlay 3.2.3.2 moved the user/user2 bundles to /etc/s6-overlay/user-bundles.d. With only the version bumped, the image still built, because the RUN chains ignored failing touch commands. But Apache and the workers never started. The Dockerfile now registers services in the new location, and those two RUN blocks use set -e so a wrong bundle path fails the build.

Upgrade note for existing deployments

Users of this compose file will have their MariaDB data volume upgraded from 11.0 to 11.8 on the next start, because MARIADB_AUTO_UPGRADE=1 is already set. This cannot be undone, so they should back up first.

Testing

  • docker build --pull --no-cache succeeds: PHP 8.4.27, phpredis 6.3.0, Mosquitto-PHP 0.5.1.
  • Fresh stack: HTTP 200, schema initialised, all s6 services started (MariaDB 11.8.9, Redis 8.10.2).
  • Upgrade: a MariaDB 11.0 data volume ran mariadb-upgrade to 11.8.9 successfully, and data saved under Redis 7.0 was intact under Redis 8.
  • Not yet tested: the GitHub Actions major version bumps. This PR's CI run covers them.

After merge

Run the workflow manually (gh workflow run docker-release.yml --ref master) to publish openenergymonitor/emoncms:latest and the versioned tag to Docker Hub.

🤖 Generated with Claude Code

- mariadb 11.0 -> 11.8 (LTS); 11.0 is EOL and no longer receives fixes
- redis 7.0 -> 8; 7.0 is EOL and no longer receives fixes
- s6-overlay 3.1.6.2 -> 3.2.3.2; register services in the new
  /etc/s6-overlay/user-bundles.d location and use set -e so a wrong
  bundle path fails the build instead of producing an image that never
  starts Apache
- phpredis: pin to release 6.3.0 instead of building the develop branch
- GitHub Actions: checkout v7, login-action v4, build-push-action v7

Rebuilding also picks up php:8.4-apache 8.4.27, which fixes
GHSA-w8hw-w9fx-j79w (CVE-2026-109618).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@TrystanLea
TrystanLea merged commit 001d34a into master Oct 21, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant