fix: update Docker base images to latest Python 3.12 and Debian Trixie to resolve CVEs#12990
Conversation
- Update all Dockerfiles from python:3.12.13-slim-trixie to python:3.12-slim-trixie - This ensures automatic security patches for Debian base image CVEs - Affects nightly builds (base, main, main-all) and release builds (backend, ep) - Using unpinned patch version (3.12 vs 3.12.13) follows security best practices
- Update all Dockerfiles from bookworm-slim to trixie-slim in builder stage - Ensures consistency between builder and runtime Debian versions - Eliminates CVEs in both build and runtime environments - Uses ghcr.io/astral-sh/uv:python3.12-trixie-slim for all builders
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. ❌ Your project check has failed because the head coverage (50.60%) is below the target coverage (60.00%). You can increase the head coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## release-1.10.0 #12990 +/- ##
==================================================
- Coverage 54.30% 53.86% -0.45%
==================================================
Files 2053 2059 +6
Lines 188633 189207 +574
Branches 29502 29590 +88
==================================================
- Hits 102441 101919 -522
- Misses 85062 86132 +1070
- Partials 1130 1156 +26
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
…e to resolve CVEs (#12990) * fix: update Docker base images to latest Python 3.12 to resolve CVEs - Update all Dockerfiles from python:3.12.13-slim-trixie to python:3.12-slim-trixie - This ensures automatic security patches for Debian base image CVEs - Affects nightly builds (base, main, main-all) and release builds (backend, ep) - Using unpinned patch version (3.12 vs 3.12.13) follows security best practices * fix: update builder stage to Debian Trixie for consistency - Update all Dockerfiles from bookworm-slim to trixie-slim in builder stage - Ensures consistency between builder and runtime Debian versions - Eliminates CVEs in both build and runtime environments - Uses ghcr.io/astral-sh/uv:python3.12-trixie-slim for all builders
Aligns the pinned postgres base with the langflow runtime image, which moved to Debian Trixie in #12990. Keeping postgres on bookworm would have diverged the stack and locked the database to an aging glibc that will receive fewer security backports as bookworm ages into oldstable. The pin itself still solves the original bug — postgres:16 cannot silently roll its OS underneath an existing volume. Document the one-time REFRESH COLLATION VERSION step for users upgrading from a bookworm-initialized volume in docker_example/README.md. Refs: #9608
) * fix: pin postgres image to bookworm in docker_example to prevent collation mismatch The postgres:16 tag silently moved its base from Debian Bookworm (glibc 2.36) to Trixie (glibc 2.41), causing a recurring collation version mismatch warning on existing langflow-postgres volumes. Pin to postgres:16-bookworm in both docker-compose files and update the README so existing data volumes keep matching the OS locale data. Refs: langflow-ai#9608 * docs: pin postgres image to bookworm in current docs compose snippets Mirror the docker_example pin in the four current docs that publish copyable Compose snippets pairing postgres:16 with a persistent langflow-postgres volume. Prevents the same Bookworm-to-Trixie collation version mismatch warning when users follow docs instead of docker_example. Versioned historical docs are left as-is. Refs: langflow-ai#9608 * fix: switch postgres pin from bookworm to trixie for OS consistency Aligns the pinned postgres base with the langflow runtime image, which moved to Debian Trixie in langflow-ai#12990. Keeping postgres on bookworm would have diverged the stack and locked the database to an aging glibc that will receive fewer security backports as bookworm ages into oldstable. The pin itself still solves the original bug — postgres:16 cannot silently roll its OS underneath an existing volume. Document the one-time REFRESH COLLATION VERSION step for users upgrading from a bookworm-initialized volume in docker_example/README.md. Refs: langflow-ai#9608
* fix: pin postgres image to bookworm in docker_example to prevent collation mismatch The postgres:16 tag silently moved its base from Debian Bookworm (glibc 2.36) to Trixie (glibc 2.41), causing a recurring collation version mismatch warning on existing langflow-postgres volumes. Pin to postgres:16-bookworm in both docker-compose files and update the README so existing data volumes keep matching the OS locale data. Refs: #9608 * docs: pin postgres image to bookworm in current docs compose snippets Mirror the docker_example pin in the four current docs that publish copyable Compose snippets pairing postgres:16 with a persistent langflow-postgres volume. Prevents the same Bookworm-to-Trixie collation version mismatch warning when users follow docs instead of docker_example. Versioned historical docs are left as-is. Refs: #9608 * fix: switch postgres pin from bookworm to trixie for OS consistency Aligns the pinned postgres base with the langflow runtime image, which moved to Debian Trixie in #12990. Keeping postgres on bookworm would have diverged the stack and locked the database to an aging glibc that will receive fewer security backports as bookworm ages into oldstable. The pin itself still solves the original bug — postgres:16 cannot silently roll its OS underneath an existing volume. Document the one-time REFRESH COLLATION VERSION step for users upgrading from a bookworm-initialized volume in docker_example/README.md. Refs: #9608 (cherry picked from commit 7504eb4)
Summary
Updates all Docker base images to use the latest Debian Trixie and Python 3.12 to resolve CVE vulnerabilities in both builder and runtime stages.
Changes
Runtime Stage (Commit 1)
python:3.12.13-slim-trixietopython:3.12-slim-trixieBuilder Stage (Commit 2)
ghcr.io/astral-sh/uv:python3.12-bookworm-slimtoghcr.io/astral-sh/uv:python3.12-trixie-slimWhy
Testing
Affected Builds