Skip to content

Comments

Update base image to OpenJDK 26-ea-17-jdk-slim#2

Open
mo-jasim wants to merge 1 commit intoLondheShubham153:masterfrom
mo-jasim:master
Open

Update base image to OpenJDK 26-ea-17-jdk-slim#2
mo-jasim wants to merge 1 commit intoLondheShubham153:masterfrom
mo-jasim:master

Conversation

@mo-jasim
Copy link

@mo-jasim mo-jasim commented Nov 23, 2025

Old openjdk:17-jdk-alpine Was expired so I have added new one: openjdk:26-ea-17-jdk-slim

Summary by CodeRabbit

  • Chores
    • Updated container runtime dependencies.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Nov 23, 2025

Walkthrough

The Dockerfile base image was updated from openjdk:17-jdk-alpine to openjdk:26-ea-17-jdk-slim, changing both the Java runtime version and the Linux distribution variant used for the container.

Changes

Cohort / File(s) Summary
Base image update
Dockerfile
Updated base image from Alpine-based Java 17 to Debian slim-based Java 26 early access build

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify Java version compatibility and any breaking changes between Java 17 and 26 early access
  • Confirm image size and startup performance implications of switching from Alpine to Debian slim variant
  • Test application deployment with the new base image

Poem

🐇 A container hops from old to new,
Java's wings take flight so true,
Alpine fades to Debian's embrace,
Version 26 sets the pace! 🚀

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and specifically describes the main change: updating the Dockerfile base image from openjdk:17-jdk-alpine to openjdk:26-ea-17-jdk-slim.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Tip

📝 Customizable high-level summaries are now available in beta!

You can now customize how CodeRabbit generates the high-level summary in your pull requests — including its content, structure, tone, and formatting.

  • Provide your own instructions using the high_level_summary_instructions setting.
  • Format the summary however you like (bullet lists, tables, multi-section layouts, contributor stats, etc.).
  • Use high_level_summary_in_walkthrough to move the summary from the description to the walkthrough section.

Example instruction:

"Divide the high-level summary into five sections:

  1. 📝 Description — Summarize the main change in 50–60 words, explaining what was done.
  2. 📓 References — List relevant issues, discussions, documentation, or related PRs.
  3. 📦 Dependencies & Requirements — Mention any new/updated dependencies, environment variable changes, or configuration updates.
  4. 📊 Contributor Summary — Include a Markdown table showing contributions:
    | Contributor | Lines Added | Lines Removed | Files Changed |
  5. ✔️ Additional Notes — Add any extra reviewer context.
    Keep each section concise (under 200 words) and use bullet or numbered lists for clarity."

Note: This feature is currently in beta for Pro-tier users, and pricing will be announced later.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c184ddb and 23e26b3.

📒 Files selected for processing (1)
  • Dockerfile (1 hunks)

Comment on lines 1 to +2
# Use the official OpenJDK 17 image as the base image
FROM openjdk:17-jdk-alpine
FROM openjdk:26-ea-17-jdk-slim
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Update the comment to reflect the actual Java version.

The openjdk image has been deprecated, so the old image reference is understandable. However, the comment on line 1 still refers to "OpenJDK 17," but the FROM statement uses a Java 26 EA image. This creates a maintenance concern.

Update the comment to match the actual image:

-# Use the official OpenJDK 17 image as the base image
-FROM openjdk:26-ea-17-jdk-slim
+# Use the official OpenJDK 26 (Early Access) image as the base image
+FROM openjdk:26-ea-17-jdk-slim
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
# Use the official OpenJDK 17 image as the base image
FROM openjdk:17-jdk-alpine
FROM openjdk:26-ea-17-jdk-slim
# Use the official OpenJDK 26 (Early Access) image as the base image
FROM openjdk:26-ea-17-jdk-slim
🤖 Prompt for AI Agents
In Dockerfile around lines 1 to 2, the comment incorrectly states "OpenJDK 17"
while the FROM line uses openjdk:26-ea-17-jdk-slim; update the comment to
accurately reflect the actual base image and Java version (e.g., mention OpenJDK
26 EA or the specific image tag used) so the comment matches the FROM line and
avoids future confusion.

@@ -1,5 +1,5 @@
# Use the official OpenJDK 17 image as the base image
FROM openjdk:17-jdk-alpine
FROM openjdk:26-ea-17-jdk-slim
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

Verify the base image tag and consider stability/production readiness.

The openjdk image tags include pre-release / non-production builds of OpenJDK. Upgrading from the stable Java 17 LTS image to a Java 26 Early Access image introduces several risks:

  1. EA builds are not production-ready: Java 26 EA may contain breaking changes and instability.
  2. Significant version jump (17 → 26): Verify the application has been tested against Java 26 EA.
  3. OS change (Alpine → Debian): The base OS has changed from Alpine Linux to Debian slim, affecting image size and dependencies.
  4. Tag uncertainty: The tag format 26-ea-17-jdk-slim is atypical—verify this tag is correct and not a misprint (e.g., should it be 26-ea-jdk-slim?).

Before merging, please:

  1. Confirm the tag 26-ea-17-jdk-slim exists and is correct.
  2. Verify the application has been tested against Java 26 EA.
  3. Justify the need for Java 26 EA over stable LTS versions (Java 17, 21, etc.).
  4. Consider reverting to a stable LTS image (e.g., openjdk:17-jdk-slim or openjdk:21-jdk-slim) unless Java 26 EA is explicitly required.

If production stability is a concern, consider using Eclipse Temurin (formerly AdoptOpenJDK) as an alternative.



---

🌐 Web query:

```web
Java 26 release date EA status 2025

💡 Result:

Short answer — status as of late 2025:

  • JDK 26 is in active Early-Access (EA) with multiple EA builds available (JDK 26 and JavaFX 26 EA builds). [1][2]
  • Oracle/Mark Reinhold proposed the official JDK 26 release schedule: rampdown starts Dec 4, 2025; Initial RC Feb 5, 2026; GA (general availability) targeted Mar 17, 2026. [3]

Sources:

  1. JavaFX 26 EA builds page (notes that JDK 26 EA is recommended). [jdk.java.net/javafx26]. [1]
  2. OpenJDK/project updates mentioning JDK 26 EA and JavaFX 26 builds. [openjdk / project announcements]. [2]
  3. InfoQ summary of the proposed JDK 26 release schedule (dates above). [3]

🌐 Web query:

openjdk 26-ea jdk-slim docker tag format

💡 Result:

Tag format (pattern)

  • -ea(-)?-jdk-slim(-)?

Common examples

  • 26-ea-24-jdk-slim-bookworm. [1]
  • 26-ea-23-jdk-slim-trixie. [2]
  • 26-ea-20-jdk-slim-trixie. [2]
  • 26-slim (stable non-ea variant). [3]

Meaning

  • 26: Java major version.
  • ea: early-access (pre-release).
  • 24 / 23 / 20: build/iteration number.
  • jdk-slim: full JDK image using a slim base.
  • bookworm / trixie: base OS / distro variant (optional).

Sources: Snyk tag listings for openjdk images and Docker Hub mirror listing. [1][2][3]


🌐 Web query:

Java 26 production ready stable release

💡 Result:

Short answer: Not yet — JDK 26 is still in development/EA and its planned General Availability (GA) is March 17, 2026. Wait for the GA release before using it as a production/stable runtime; continue using your current supported JDK (or the latest vendor GA/LTS) until then. [1][2][3]

Sources:

  • OpenJDK JDK 26 project page (status & schedule). [1]
  • JDK-Dev announcement with the proposed JDK 26 schedule (GA = 2026-03-17). [2]
  • JDK 26 early-access release notes (EA builds available for testing). [3]

Fix the Docker base image tag format and address Java 26 EA production readiness.

The tag openjdk:26-ea-17-jdk-slim is malformed and refers to a pre-release that is unsuitable for production:

  1. Tag format is incorrect: The correct format is 26-ea-<build_number>-jdk-slim (e.g., 26-ea-24-jdk-slim-bookworm). The 17 in your tag occupies the build number position and appears to be confusion with the previous Java 17 version.
  2. Java 26 is not production-ready: Java 26 Early Access is still under development with General Availability (GA) targeted for March 17, 2026. This is not suitable for production deployments.
  3. Significant version and OS changes: Upgrading from Java 17 LTS (Alpine) to Java 26 EA (Debian-based) is a major change that requires thorough testing.

Fix the Dockerfile before merging:

  • Correct the tag to a valid Early Access build if Java 26 EA is explicitly required (e.g., openjdk:26-ea-24-jdk-slim-bookworm), or
  • Revert to a stable LTS image (e.g., openjdk:21-jdk-slim) for production stability.

Verify the application has been tested against the chosen Java version.

🤖 Prompt for AI Agents
In Dockerfile around line 2, the base image tag openjdk:26-ea-17-jdk-slim is
malformed and points to an Early Access Java 26 build that is unsuitable for
production; fix it by either replacing the tag with a valid EA build (e.g.,
openjdk:26-ea-24-jdk-slim-bookworm) if you intentionally require Java 26 EA, or
preferably revert to a stable LTS image such as openjdk:21-jdk-slim for
production; after changing the tag, run your test suite and smoke tests to
verify the application behaves correctly on the chosen Java version before
merging.

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