Skip to content

amazoncorretto: add Alpine slim and AL2027 tags - #22705

Open
mmm-choi wants to merge 1 commit into
docker-library:masterfrom
mmm-choi:amazoncorretto-slim-al2027
Open

mmm-choi wants to merge 1 commit into
docker-library:masterfrom
mmm-choi:amazoncorretto-slim-al2027

Conversation

@mmm-choi

@mmm-choi mmm-choi commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

Alpine slim tags for 17, 21, 25, 27.
AL2027 tags for 8, 11, 17, 21, 25, 27.

Generated tags

Checked tags, Dockerfile paths and base image architectures.

Refs corretto/corretto-docker#301

Font fix: corretto/corretto-docker#308

@mmm-choi
mmm-choi requested a review from a team as a code owner November 9, 2026 19:21
@github-actions

This comment has been minimized.

@mmm-choi
mmm-choi force-pushed the amazoncorretto-slim-al2027 branch from 846d9c6 to 1c8fbe7 Compare November 9, 2026 20:26
@github-actions

github-actions Bot commented Nov 9, 2026

Copy link
Copy Markdown
Diff for 1c8fbe7:
diff --git a/_bashbrew-cat b/_bashbrew-cat
index ac1eea0..8ab2d81 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -1,7 +1,7 @@
 Maintainers: Amazon Corretto Team <corretto-team@amazon.com> (@corretto), Dan Lutker <lutkerd@amazon.com> (@lutkerd), Ben Taylor <benty@amazon.com> (@benty-amzn), David Alvarez <alvdavi@amazon.com> (@alvdavi), Rui Li <ruiamzn@amazon.com> (@rgithubli), Sergey Bylokhov <bylokhov@amazon.com> (@mrserb), Victor Rudometov <vicrud@amazon.com> (@Rudometov), Elif Aslan <elifasln@amazon.com> (@elifaslan1), Chad Rakoczy <chadrako@amazon.com> (@chadrako), Ian Myers <ianrichr@amazon.com> (@ianrichr), John Spurling <spurn@amazon.com> (@synecdoche), Daniel Hu <costmuch@amazon.com> (@cost0much), Michael De Vera <mldevera@amazon.com> (@midver), Min Choi <minschoi@amazon.com> (@mmm-choi), Satyen Subramaniam <satyenme@amazon.com> (@satyenme)
 GitRepo: https://github.com/corretto/corretto-docker.git
 GitFetch: refs/heads/main
-GitCommit: caa8bb41ccfed132a4836a08a3db024f5d79fb73
+GitCommit: 1c77d89e989bbbfef281423795fb57b68eaab8a8
 
 Tags: 8-al2, 8u512-al2, 8-al2-full, 8-al2-jdk, 8-al2-generic, 8u512-al2-generic, 8-al2-generic-jdk
 Architectures: amd64, arm64v8
@@ -23,6 +23,14 @@ Tags: 8-al2023-jre, 8u512-al2023-jre, 8-jre
 Architectures: amd64, arm64v8
 Directory: 8/jre/al2023
 
+Tags: 8-al2027, 8u512-al2027, 8-al2027-jdk
+Architectures: amd64, arm64v8
+Directory: 8/jdk/al2027
+
+Tags: 8-al2027-jre, 8u512-al2027-jre
+Architectures: amd64, arm64v8
+Directory: 8/jre/al2027
+
 Tags: 8-alpine3.21, 8u512-alpine3.21, 8-alpine3.21-full, 8-alpine3.21-jdk
 Architectures: amd64, arm64v8
 Directory: 8/jdk/alpine/3.21
@@ -79,6 +87,18 @@ Tags: 11-al2023-headless, 11.0.33-al2023-headless, 11-headless
 Architectures: amd64, arm64v8
 Directory: 11/headless/al2023
 
+Tags: 11-al2027, 11.0.33-al2027, 11-al2027-jdk
+Architectures: amd64, arm64v8
+Directory: 11/jdk/al2027
+
+Tags: 11-al2027-headful, 11.0.33-al2027-headful
+Architectures: amd64, arm64v8
+Directory: 11/headful/al2027
+
+Tags: 11-al2027-headless, 11.0.33-al2027-headless
+Architectures: amd64, arm64v8
+Directory: 11/headless/al2027
+
 Tags: 11-alpine3.21, 11.0.33-alpine3.21, 11-alpine3.21-full, 11-alpine3.21-jdk
 Architectures: amd64, arm64v8
 Directory: 11/jdk/alpine/3.21
@@ -123,6 +143,18 @@ Tags: 17-al2023-headless, 17.0.21-al2023-headless, 17-headless
 Architectures: amd64, arm64v8
 Directory: 17/headless/al2023
 
+Tags: 17-al2027, 17.0.21-al2027, 17-al2027-jdk
+Architectures: amd64, arm64v8
+Directory: 17/jdk/al2027
+
+Tags: 17-al2027-headful, 17.0.21-al2027-headful
+Architectures: amd64, arm64v8
+Directory: 17/headful/al2027
+
+Tags: 17-al2027-headless, 17.0.21-al2027-headless
+Architectures: amd64, arm64v8
+Directory: 17/headless/al2027
+
 Tags: 17-alpine3.21, 17.0.21-alpine3.21, 17-alpine3.21-full, 17-alpine3.21-jdk
 Architectures: amd64, arm64v8
 Directory: 17/jdk/alpine/3.21
@@ -139,6 +171,10 @@ Tags: 17-alpine3.24, 17.0.21-alpine3.24, 17-alpine3.24-full, 17-alpine3.24-jdk,
 Architectures: amd64, arm64v8
 Directory: 17/jdk/alpine/3.24
 
+Tags: 17-alpine-slim, 17.0.21-alpine-slim, 17-alpine3.24-slim, 17.0.21-alpine3.24-slim
+Architectures: amd64, arm64v8
+Directory: 17/slim/alpine
+
 Tags: 21-al2, 21.0.13-al2, 21-al2-full, 21-al2-jdk, 21-al2-generic, 21.0.13-al2-generic, 21-al2-generic-jdk
 Architectures: amd64, arm64v8
 Directory: 21/jdk/al2-generic
@@ -155,6 +191,18 @@ Tags: 21-al2023-headless, 21.0.13-al2023-headless, 21-headless
 Architectures: amd64, arm64v8
 Directory: 21/headless/al2023
 
+Tags: 21-al2027, 21.0.13-al2027, 21-al2027-jdk
+Architectures: amd64, arm64v8
+Directory: 21/jdk/al2027
+
+Tags: 21-al2027-headful, 21.0.13-al2027-headful
+Architectures: amd64, arm64v8
+Directory: 21/headful/al2027
+
+Tags: 21-al2027-headless, 21.0.13-al2027-headless
+Architectures: amd64, arm64v8
+Directory: 21/headless/al2027
+
 Tags: 21-alpine3.21, 21.0.13-alpine3.21, 21-alpine3.21-full, 21-alpine3.21-jdk
 Architectures: amd64, arm64v8
 Directory: 21/jdk/alpine/3.21
@@ -171,6 +219,10 @@ Tags: 21-alpine3.24, 21.0.13-alpine3.24, 21-alpine3.24-full, 21-alpine3.24-jdk,
 Architectures: amd64, arm64v8
 Directory: 21/jdk/alpine/3.24
 
+Tags: 21-alpine-slim, 21.0.13-alpine-slim, 21-alpine3.24-slim, 21.0.13-alpine3.24-slim
+Architectures: amd64, arm64v8
+Directory: 21/slim/alpine
+
 Tags: 25-al2023, 25.0.5-al2023, 25-al2023-jdk, 25, 25-jdk, 25.0.5
 Architectures: amd64, arm64v8
 Directory: 25/jdk/al2023
@@ -183,6 +235,18 @@ Tags: 25-al2023-headless, 25.0.5-al2023-headless, 25-headless
 Architectures: amd64, arm64v8
 Directory: 25/headless/al2023
 
+Tags: 25-al2027, 25.0.5-al2027, 25-al2027-jdk
+Architectures: amd64, arm64v8
+Directory: 25/jdk/al2027
+
+Tags: 25-al2027-headful, 25.0.5-al2027-headful
+Architectures: amd64, arm64v8
+Directory: 25/headful/al2027
+
+Tags: 25-al2027-headless, 25.0.5-al2027-headless
+Architectures: amd64, arm64v8
+Directory: 25/headless/al2027
+
 Tags: 25-alpine3.21, 25.0.5-alpine3.21, 25-alpine3.21-full, 25-alpine3.21-jdk
 Architectures: amd64, arm64v8
 Directory: 25/jdk/alpine/3.21
@@ -199,6 +263,10 @@ Tags: 25-alpine3.24, 25.0.5-alpine3.24, 25-alpine3.24-full, 25-alpine3.24-jdk, 2
 Architectures: amd64, arm64v8
 Directory: 25/jdk/alpine/3.24
 
+Tags: 25-alpine-slim, 25.0.5-alpine-slim, 25-alpine3.24-slim, 25.0.5-alpine3.24-slim
+Architectures: amd64, arm64v8
+Directory: 25/slim/alpine
+
 Tags: 27-al2023, 27.0.1-al2023, 27-al2023-jdk, 27, 27-jdk, 27.0.1
 Architectures: amd64, arm64v8
 Directory: 27/jdk/al2023
@@ -211,6 +279,18 @@ Tags: 27-al2023-headless, 27.0.1-al2023-headless, 27-headless
 Architectures: amd64, arm64v8
 Directory: 27/headless/al2023
 
+Tags: 27-al2027, 27.0.1-al2027, 27-al2027-jdk
+Architectures: amd64, arm64v8
+Directory: 27/jdk/al2027
+
+Tags: 27-al2027-headful, 27.0.1-al2027-headful
+Architectures: amd64, arm64v8
+Directory: 27/headful/al2027
+
+Tags: 27-al2027-headless, 27.0.1-al2027-headless
+Architectures: amd64, arm64v8
+Directory: 27/headless/al2027
+
 Tags: 27-alpine3.21, 27.0.1-alpine3.21, 27-alpine3.21-full, 27-alpine3.21-jdk
 Architectures: amd64, arm64v8
 Directory: 27/jdk/alpine/3.21
@@ -226,3 +306,7 @@ Directory: 27/jdk/alpine/3.23
 Tags: 27-alpine3.24, 27.0.1-alpine3.24, 27-alpine3.24-full, 27-alpine3.24-jdk, 27-alpine, 27.0.1-alpine, 27-alpine-full, 27-alpine-jdk
 Architectures: amd64, arm64v8
 Directory: 27/jdk/alpine/3.24
+
+Tags: 27-alpine-slim, 27.0.1-alpine-slim, 27-alpine3.24-slim, 27.0.1-alpine3.24-slim
+Architectures: amd64, arm64v8
+Directory: 27/slim/alpine
diff --git a/_bashbrew-list b/_bashbrew-list
index e44e027..56b0043 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -6,6 +6,8 @@ amazoncorretto:8u512-al2-native-jdk
 amazoncorretto:8u512-al2-native-jre
 amazoncorretto:8u512-al2023
 amazoncorretto:8u512-al2023-jre
+amazoncorretto:8u512-al2027
+amazoncorretto:8u512-al2027-jre
 amazoncorretto:8u512-alpine
 amazoncorretto:8u512-alpine3.21
 amazoncorretto:8u512-alpine3.21-jre
@@ -26,6 +28,9 @@ amazoncorretto:8-al2-native-jre
 amazoncorretto:8-al2023
 amazoncorretto:8-al2023-jdk
 amazoncorretto:8-al2023-jre
+amazoncorretto:8-al2027
+amazoncorretto:8-al2027-jdk
+amazoncorretto:8-al2027-jre
 amazoncorretto:8-alpine
 amazoncorretto:8-alpine3.21
 amazoncorretto:8-alpine3.21-full
@@ -60,6 +65,10 @@ amazoncorretto:11-al2023
 amazoncorretto:11-al2023-headful
 amazoncorretto:11-al2023-headless
 amazoncorretto:11-al2023-jdk
+amazoncorretto:11-al2027
+amazoncorretto:11-al2027-headful
+amazoncorretto:11-al2027-headless
+amazoncorretto:11-al2027-jdk
 amazoncorretto:11-alpine
 amazoncorretto:11-alpine3.21
 amazoncorretto:11-alpine3.21-full
@@ -86,6 +95,9 @@ amazoncorretto:11.0.33-al2-native-jdk
 amazoncorretto:11.0.33-al2023
 amazoncorretto:11.0.33-al2023-headful
 amazoncorretto:11.0.33-al2023-headless
+amazoncorretto:11.0.33-al2027
+amazoncorretto:11.0.33-al2027-headful
+amazoncorretto:11.0.33-al2027-headless
 amazoncorretto:11.0.33-alpine
 amazoncorretto:11.0.33-alpine3.21
 amazoncorretto:11.0.33-alpine3.22
@@ -104,6 +116,10 @@ amazoncorretto:17-al2023
 amazoncorretto:17-al2023-headful
 amazoncorretto:17-al2023-headless
 amazoncorretto:17-al2023-jdk
+amazoncorretto:17-al2027
+amazoncorretto:17-al2027-headful
+amazoncorretto:17-al2027-headless
+amazoncorretto:17-al2027-jdk
 amazoncorretto:17-alpine
 amazoncorretto:17-alpine3.21
 amazoncorretto:17-alpine3.21-full
@@ -117,8 +133,10 @@ amazoncorretto:17-alpine3.23-jdk
 amazoncorretto:17-alpine3.24
 amazoncorretto:17-alpine3.24-full
 amazoncorretto:17-alpine3.24-jdk
+amazoncorretto:17-alpine3.24-slim
 amazoncorretto:17-alpine-full
 amazoncorretto:17-alpine-jdk
+amazoncorretto:17-alpine-slim
 amazoncorretto:17-headful
 amazoncorretto:17-headless
 amazoncorretto:17-jdk
@@ -131,11 +149,16 @@ amazoncorretto:17.0.21-al2-native-jdk
 amazoncorretto:17.0.21-al2023
 amazoncorretto:17.0.21-al2023-headful
 amazoncorretto:17.0.21-al2023-headless
+amazoncorretto:17.0.21-al2027
+amazoncorretto:17.0.21-al2027-headful
+amazoncorretto:17.0.21-al2027-headless
 amazoncorretto:17.0.21-alpine
 amazoncorretto:17.0.21-alpine3.21
 amazoncorretto:17.0.21-alpine3.22
 amazoncorretto:17.0.21-alpine3.23
 amazoncorretto:17.0.21-alpine3.24
+amazoncorretto:17.0.21-alpine3.24-slim
+amazoncorretto:17.0.21-alpine-slim
 amazoncorretto:21
 amazoncorretto:21-al2
 amazoncorretto:21-al2-full
@@ -146,6 +169,10 @@ amazoncorretto:21-al2023
 amazoncorretto:21-al2023-headful
 amazoncorretto:21-al2023-headless
 amazoncorretto:21-al2023-jdk
+amazoncorretto:21-al2027
+amazoncorretto:21-al2027-headful
+amazoncorretto:21-al2027-headless
+amazoncorretto:21-al2027-jdk
 amazoncorretto:21-alpine
 amazoncorretto:21-alpine3.21
 amazoncorretto:21-alpine3.21-full
@@ -159,8 +186,10 @@ amazoncorretto:21-alpine3.23-jdk
 amazoncorretto:21-alpine3.24
 amazoncorretto:21-alpine3.24-full
 amazoncorretto:21-alpine3.24-jdk
+amazoncorretto:21-alpine3.24-slim
 amazoncorretto:21-alpine-full
 amazoncorretto:21-alpine-jdk
+amazoncorretto:21-alpine-slim
 amazoncorretto:21-headful
 amazoncorretto:21-headless
 amazoncorretto:21-jdk
@@ -170,16 +199,25 @@ amazoncorretto:21.0.13-al2-generic
 amazoncorretto:21.0.13-al2023
 amazoncorretto:21.0.13-al2023-headful
 amazoncorretto:21.0.13-al2023-headless
+amazoncorretto:21.0.13-al2027
+amazoncorretto:21.0.13-al2027-headful
+amazoncorretto:21.0.13-al2027-headless
 amazoncorretto:21.0.13-alpine
 amazoncorretto:21.0.13-alpine3.21
 amazoncorretto:21.0.13-alpine3.22
 amazoncorretto:21.0.13-alpine3.23
 amazoncorretto:21.0.13-alpine3.24
+amazoncorretto:21.0.13-alpine3.24-slim
+amazoncorretto:21.0.13-alpine-slim
 amazoncorretto:25
 amazoncorretto:25-al2023
 amazoncorretto:25-al2023-headful
 amazoncorretto:25-al2023-headless
 amazoncorretto:25-al2023-jdk
+amazoncorretto:25-al2027
+amazoncorretto:25-al2027-headful
+amazoncorretto:25-al2027-headless
+amazoncorretto:25-al2027-jdk
 amazoncorretto:25-alpine
 amazoncorretto:25-alpine3.21
 amazoncorretto:25-alpine3.21-full
@@ -193,8 +231,10 @@ amazoncorretto:25-alpine3.23-jdk
 amazoncorretto:25-alpine3.24
 amazoncorretto:25-alpine3.24-full
 amazoncorretto:25-alpine3.24-jdk
+amazoncorretto:25-alpine3.24-slim
 amazoncorretto:25-alpine-full
 amazoncorretto:25-alpine-jdk
+amazoncorretto:25-alpine-slim
 amazoncorretto:25-headful
 amazoncorretto:25-headless
 amazoncorretto:25-jdk
@@ -202,16 +242,25 @@ amazoncorretto:25.0.5
 amazoncorretto:25.0.5-al2023
 amazoncorretto:25.0.5-al2023-headful
 amazoncorretto:25.0.5-al2023-headless
+amazoncorretto:25.0.5-al2027
+amazoncorretto:25.0.5-al2027-headful
+amazoncorretto:25.0.5-al2027-headless
 amazoncorretto:25.0.5-alpine
 amazoncorretto:25.0.5-alpine3.21
 amazoncorretto:25.0.5-alpine3.22
 amazoncorretto:25.0.5-alpine3.23
 amazoncorretto:25.0.5-alpine3.24
+amazoncorretto:25.0.5-alpine3.24-slim
+amazoncorretto:25.0.5-alpine-slim
 amazoncorretto:27
 amazoncorretto:27-al2023
 amazoncorretto:27-al2023-headful
 amazoncorretto:27-al2023-headless
 amazoncorretto:27-al2023-jdk
+amazoncorretto:27-al2027
+amazoncorretto:27-al2027-headful
+amazoncorretto:27-al2027-headless
+amazoncorretto:27-al2027-jdk
 amazoncorretto:27-alpine
 amazoncorretto:27-alpine3.21
 amazoncorretto:27-alpine3.21-full
@@ -225,8 +274,10 @@ amazoncorretto:27-alpine3.23-jdk
 amazoncorretto:27-alpine3.24
 amazoncorretto:27-alpine3.24-full
 amazoncorretto:27-alpine3.24-jdk
+amazoncorretto:27-alpine3.24-slim
 amazoncorretto:27-alpine-full
 amazoncorretto:27-alpine-jdk
+amazoncorretto:27-alpine-slim
 amazoncorretto:27-headful
 amazoncorretto:27-headless
 amazoncorretto:27-jdk
@@ -234,9 +285,14 @@ amazoncorretto:27.0.1
 amazoncorretto:27.0.1-al2023
 amazoncorretto:27.0.1-al2023-headful
 amazoncorretto:27.0.1-al2023-headless
+amazoncorretto:27.0.1-al2027
+amazoncorretto:27.0.1-al2027-headful
+amazoncorretto:27.0.1-al2027-headless
 amazoncorretto:27.0.1-alpine
 amazoncorretto:27.0.1-alpine3.21
 amazoncorretto:27.0.1-alpine3.22
 amazoncorretto:27.0.1-alpine3.23
 amazoncorretto:27.0.1-alpine3.24
+amazoncorretto:27.0.1-alpine3.24-slim
+amazoncorretto:27.0.1-alpine-slim
 amazoncorretto:latest
diff --git a/_bashbrew-list-build-order b/_bashbrew-list-build-order
index a0d6a3f..4c9782e 100644
--- a/_bashbrew-list-build-order
+++ b/_bashbrew-list-build-order
@@ -1,16 +1,19 @@
 amazoncorretto:8u512-al2-native-jdk
 amazoncorretto:8u512-al2-native-jre
+amazoncorretto:8u512-al2027-jre
 amazoncorretto:8u512-alpine3.21-jre
 amazoncorretto:8u512-alpine3.22-jre
 amazoncorretto:8u512-alpine3.23-jre
 amazoncorretto:8u512-alpine-jre
 amazoncorretto:8-al2-generic-jdk
+amazoncorretto:8-al2027-jdk
 amazoncorretto:8-alpine3.21-jdk
 amazoncorretto:8-alpine3.22-jdk
 amazoncorretto:8-alpine3.23-jdk
 amazoncorretto:8-alpine-jdk
 amazoncorretto:8-jre
 amazoncorretto:11-al2-generic-jdk
+amazoncorretto:11-al2027-jdk
 amazoncorretto:11-alpine3.21-jdk
 amazoncorretto:11-alpine3.22-jdk
 amazoncorretto:11-alpine3.23-jdk
@@ -20,7 +23,10 @@ amazoncorretto:11-headless
 amazoncorretto:11.0.33
 amazoncorretto:11.0.33-al2-native-headless
 amazoncorretto:11.0.33-al2-native-jdk
+amazoncorretto:11.0.33-al2027-headful
+amazoncorretto:11.0.33-al2027-headless
 amazoncorretto:17-al2-generic-jdk
+amazoncorretto:17-al2027-jdk
 amazoncorretto:17-alpine3.21-jdk
 amazoncorretto:17-alpine3.22-jdk
 amazoncorretto:17-alpine3.23-jdk
@@ -31,7 +37,11 @@ amazoncorretto:17.0.21
 amazoncorretto:17.0.21-al2-native-headful
 amazoncorretto:17.0.21-al2-native-headless
 amazoncorretto:17.0.21-al2-native-jdk
+amazoncorretto:17.0.21-al2027-headful
+amazoncorretto:17.0.21-al2027-headless
+amazoncorretto:17.0.21-alpine3.24-slim
 amazoncorretto:21-al2-generic-jdk
+amazoncorretto:21-al2027-jdk
 amazoncorretto:21-alpine3.21-jdk
 amazoncorretto:21-alpine3.22-jdk
 amazoncorretto:21-alpine3.23-jdk
@@ -39,6 +49,10 @@ amazoncorretto:21-alpine-jdk
 amazoncorretto:21-headful
 amazoncorretto:21-headless
 amazoncorretto:21.0.13
+amazoncorretto:21.0.13-al2027-headful
+amazoncorretto:21.0.13-al2027-headless
+amazoncorretto:21.0.13-alpine3.24-slim
+amazoncorretto:25-al2027-jdk
 amazoncorretto:25-alpine3.21-jdk
 amazoncorretto:25-alpine3.22-jdk
 amazoncorretto:25-alpine3.23-jdk
@@ -46,6 +60,10 @@ amazoncorretto:25-alpine-jdk
 amazoncorretto:25-headful
 amazoncorretto:25-headless
 amazoncorretto:25.0.5
+amazoncorretto:25.0.5-al2027-headful
+amazoncorretto:25.0.5-al2027-headless
+amazoncorretto:25.0.5-alpine3.24-slim
+amazoncorretto:27-al2027-jdk
 amazoncorretto:27-alpine3.21-jdk
 amazoncorretto:27-alpine3.22-jdk
 amazoncorretto:27-alpine3.23-jdk
@@ -53,4 +71,7 @@ amazoncorretto:27-alpine-jdk
 amazoncorretto:27-headful
 amazoncorretto:27-headless
 amazoncorretto:27.0.1
+amazoncorretto:27.0.1-al2027-headful
+amazoncorretto:27.0.1-al2027-headless
+amazoncorretto:27.0.1-alpine3.24-slim
 amazoncorretto:latest
diff --git a/amazoncorretto_11.0.33/Dockerfile b/amazoncorretto_11-al2027-jdk/Dockerfile
similarity index 55%
copy from amazoncorretto_11.0.33/Dockerfile
copy to amazoncorretto_11-al2027-jdk/Dockerfile
index 6b008d9..ab39cfe 100644
--- a/amazoncorretto_11.0.33/Dockerfile
+++ b/amazoncorretto_11-al2027-jdk/Dockerfile
@@ -1,23 +1,23 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=11.0.33.0.10-1
 ARG resource_version=11.0.33.0.10
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-11-amazon-corretto-headless-$version.amzn2023.${ARCH}.rpm" "java-11-amazon-corretto-$version.amzn2023.${ARCH}.rpm" "java-11-amazon-corretto-devel-$version.amzn2023.${ARCH}.rpm" "java-11-amazon-corretto-jmods-$version.amzn2023.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-11-amazon-corretto-headless-$version.amzn2027.${ARCH}.rpm" "java-11-amazon-corretto-$version.amzn2027.${ARCH}.rpm" "java-11-amazon-corretto-devel-$version.amzn2027.${ARCH}.rpm" "java-11-amazon-corretto-jmods-$version.amzn2027.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-11-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_11-headful/Dockerfile b/amazoncorretto_11.0.33-al2027-headful/Dockerfile
similarity index 62%
copy from amazoncorretto_11-headful/Dockerfile
copy to amazoncorretto_11.0.33-al2027-headful/Dockerfile
index 4771328..a5f1020 100644
--- a/amazoncorretto_11-headful/Dockerfile
+++ b/amazoncorretto_11.0.33-al2027-headful/Dockerfile
@@ -1,22 +1,22 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=11.0.33.0.10-1
 ARG resource_version=11.0.33.0.10
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-11-amazon-corretto-headless-$version.amzn2023.${ARCH}.rpm" "java-11-amazon-corretto-$version.amzn2023.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-11-amazon-corretto-headless-$version.amzn2027.${ARCH}.rpm" "java-11-amazon-corretto-$version.amzn2027.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-11-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_11-headless/Dockerfile b/amazoncorretto_11.0.33-al2027-headless/Dockerfile
similarity index 64%
copy from amazoncorretto_11-headless/Dockerfile
copy to amazoncorretto_11.0.33-al2027-headless/Dockerfile
index 85857a8..ffbbd4d 100644
--- a/amazoncorretto_11-headless/Dockerfile
+++ b/amazoncorretto_11.0.33-al2027-headless/Dockerfile
@@ -1,22 +1,22 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=11.0.33.0.10-1
 ARG resource_version=11.0.33.0.10
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-11-amazon-corretto-headless-$version.amzn2023.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-11-amazon-corretto-headless-$version.amzn2027.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-11-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_17.0.21/Dockerfile b/amazoncorretto_17-al2027-jdk/Dockerfile
similarity index 54%
copy from amazoncorretto_17.0.21/Dockerfile
copy to amazoncorretto_17-al2027-jdk/Dockerfile
index 557b7c5..10ead2a 100644
--- a/amazoncorretto_17.0.21/Dockerfile
+++ b/amazoncorretto_17-al2027-jdk/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=17.0.21.0.11-1
 ARG resource_version=17.0.21.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-17-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-devel-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-jmods-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-17-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-devel-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-jmods-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-17-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_17-headless/Dockerfile b/amazoncorretto_17.0.21-al2027-headful/Dockerfile
similarity index 60%
copy from amazoncorretto_17-headless/Dockerfile
copy to amazoncorretto_17.0.21-al2027-headful/Dockerfile
index b78e537..2342fa4 100644
--- a/amazoncorretto_17-headless/Dockerfile
+++ b/amazoncorretto_17.0.21-al2027-headful/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=17.0.21.0.11-1
 ARG resource_version=17.0.21.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-17-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-17-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-17-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-17-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_17-headless/Dockerfile b/amazoncorretto_17.0.21-al2027-headless/Dockerfile
similarity index 64%
copy from amazoncorretto_17-headless/Dockerfile
copy to amazoncorretto_17.0.21-al2027-headless/Dockerfile
index b78e537..4e0441b 100644
--- a/amazoncorretto_17-headless/Dockerfile
+++ b/amazoncorretto_17.0.21-al2027-headless/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=17.0.21.0.11-1
 ARG resource_version=17.0.21.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-17-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-17-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-17-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_17-alpine-jdk/Dockerfile b/amazoncorretto_17.0.21-alpine3.24-slim/Dockerfile
similarity index 59%
copy from amazoncorretto_17-alpine-jdk/Dockerfile
copy to amazoncorretto_17.0.21-alpine3.24-slim/Dockerfile
index cb1eef9..1ee60b8 100644
--- a/amazoncorretto_17-alpine-jdk/Dockerfile
+++ b/amazoncorretto_17.0.21-alpine3.24-slim/Dockerfile
@@ -4,6 +4,9 @@ ARG version=17.0.21.0.11
 
 # Please note that the THIRD-PARTY-LICENSE could be out of date if the base image has been updated recently.
 # The Corretto team will update this file but you may see a few days' delay.
+#
+# Slim:
+#   JLink is used (retaining all modules) to create a slimmer version of the JDK excluding man-pages, header files and debugging symbols - saving ~113MB.
 RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads/resources/licenses/alpine/THIRD-PARTY-LICENSES-20200824.tar.gz && \
     echo "82f3e50e71b2aee21321b2b33de372feed5befad6ef2196ddec92311bc09becb  /THIRD-PARTY-LICENSES-20200824.tar.gz" | sha256sum -c - && \
     tar x -ovzf THIRD-PARTY-LICENSES-20200824.tar.gz && \
@@ -12,8 +15,12 @@ RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads
     SHA_SUM="6cfdf08be09f32ca298e2d5bd4a359ee2b275765c09b56d514624bf831eafb91" && \
     echo "${SHA_SUM}  /etc/apk/keys/amazoncorretto.rsa.pub" | sha256sum -c - && \
     echo "https://apk.corretto.aws" >> /etc/apk/repositories && \
-    apk add --no-cache amazon-corretto-17=$version-r0 && \
-    rm -rf /usr/lib/jvm/java-17-amazon-corretto/lib/src.zip
+    apk add --no-cache amazon-corretto-17=$version-r0 binutils && \
+    /usr/lib/jvm/default-jvm/bin/jlink --add-modules "$(java --list-modules | sed -e 's/@[0-9].*$/,/' | tr -d \\n)" --no-man-pages --no-header-files --strip-debug --output /opt/corretto-slim && \
+    apk del binutils amazon-corretto-17 && \
+    mkdir -p /usr/lib/jvm/ && \
+    mv /opt/corretto-slim /usr/lib/jvm/java-17-amazon-corretto && \
+    ln -sfn /usr/lib/jvm/java-17-amazon-corretto /usr/lib/jvm/default-jvm
 
 
 ENV LANG=C.UTF-8
diff --git a/amazoncorretto_21.0.13/Dockerfile b/amazoncorretto_21-al2027-jdk/Dockerfile
similarity index 54%
copy from amazoncorretto_21.0.13/Dockerfile
copy to amazoncorretto_21-al2027-jdk/Dockerfile
index f9a37aa..4c7f699 100644
--- a/amazoncorretto_21.0.13/Dockerfile
+++ b/amazoncorretto_21-al2027-jdk/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=21.0.13.0.11-1
 ARG resource_version=21.0.13.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-21-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-devel-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-jmods-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-21-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-devel-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-jmods-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-21-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_21-headful/Dockerfile b/amazoncorretto_21.0.13-al2027-headful/Dockerfile
similarity index 60%
copy from amazoncorretto_21-headful/Dockerfile
copy to amazoncorretto_21.0.13-al2027-headful/Dockerfile
index 56ccddd..36f1287 100644
--- a/amazoncorretto_21-headful/Dockerfile
+++ b/amazoncorretto_21.0.13-al2027-headful/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=21.0.13.0.11-1
 ARG resource_version=21.0.13.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-21-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-21-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-21-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-21-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_21-headless/Dockerfile b/amazoncorretto_21.0.13-al2027-headless/Dockerfile
similarity index 64%
copy from amazoncorretto_21-headless/Dockerfile
copy to amazoncorretto_21.0.13-al2027-headless/Dockerfile
index 99b25ba..f4537d2 100644
--- a/amazoncorretto_21-headless/Dockerfile
+++ b/amazoncorretto_21.0.13-al2027-headless/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=21.0.13.0.11-1
 ARG resource_version=21.0.13.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-21-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-21-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-21-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_21-alpine-jdk/Dockerfile b/amazoncorretto_21.0.13-alpine3.24-slim/Dockerfile
similarity index 59%
copy from amazoncorretto_21-alpine-jdk/Dockerfile
copy to amazoncorretto_21.0.13-alpine3.24-slim/Dockerfile
index 394c9cc..550c15f 100644
--- a/amazoncorretto_21-alpine-jdk/Dockerfile
+++ b/amazoncorretto_21.0.13-alpine3.24-slim/Dockerfile
@@ -4,6 +4,9 @@ ARG version=21.0.13.0.11
 
 # Please note that the THIRD-PARTY-LICENSE could be out of date if the base image has been updated recently.
 # The Corretto team will update this file but you may see a few days' delay.
+#
+# Slim:
+#   JLink is used (retaining all modules) to create a slimmer version of the JDK excluding man-pages, header files and debugging symbols - saving ~113MB.
 RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads/resources/licenses/alpine/THIRD-PARTY-LICENSES-20200824.tar.gz && \
     echo "82f3e50e71b2aee21321b2b33de372feed5befad6ef2196ddec92311bc09becb  /THIRD-PARTY-LICENSES-20200824.tar.gz" | sha256sum -c - && \
     tar x -ovzf THIRD-PARTY-LICENSES-20200824.tar.gz && \
@@ -12,8 +15,12 @@ RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads
     SHA_SUM="6cfdf08be09f32ca298e2d5bd4a359ee2b275765c09b56d514624bf831eafb91" && \
     echo "${SHA_SUM}  /etc/apk/keys/amazoncorretto.rsa.pub" | sha256sum -c - && \
     echo "https://apk.corretto.aws" >> /etc/apk/repositories && \
-    apk add --no-cache amazon-corretto-21=$version-r0 && \
-    rm -rf /usr/lib/jvm/java-21-amazon-corretto/lib/src.zip
+    apk add --no-cache amazon-corretto-21=$version-r0 binutils && \
+    /usr/lib/jvm/default-jvm/bin/jlink --add-modules "$(java --list-modules | sed -e 's/@[0-9].*$/,/' | tr -d \\n)" --no-man-pages --no-header-files --strip-debug --output /opt/corretto-slim && \
+    apk del binutils amazon-corretto-21 && \
+    mkdir -p /usr/lib/jvm/ && \
+    mv /opt/corretto-slim /usr/lib/jvm/java-21-amazon-corretto && \
+    ln -sfn /usr/lib/jvm/java-21-amazon-corretto /usr/lib/jvm/default-jvm
 
 
 ENV LANG=C.UTF-8
diff --git a/amazoncorretto_25.0.5/Dockerfile b/amazoncorretto_25-al2027-jdk/Dockerfile
similarity index 54%
copy from amazoncorretto_25.0.5/Dockerfile
copy to amazoncorretto_25-al2027-jdk/Dockerfile
index 4646fae..b02f764 100644
--- a/amazoncorretto_25.0.5/Dockerfile
+++ b/amazoncorretto_25-al2027-jdk/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=25.0.5.0.10-1
 ARG resource_version=25.0.5.0.10
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-25-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-devel-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-jmods-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-25-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-devel-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-jmods-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-25-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_25-headful/Dockerfile b/amazoncorretto_25.0.5-al2027-headful/Dockerfile
similarity index 60%
copy from amazoncorretto_25-headful/Dockerfile
copy to amazoncorretto_25.0.5-al2027-headful/Dockerfile
index 3f7a70e..ea5e78d 100644
--- a/amazoncorretto_25-headful/Dockerfile
+++ b/amazoncorretto_25.0.5-al2027-headful/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=25.0.5.0.10-1
 ARG resource_version=25.0.5.0.10
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-25-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-25-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-25-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-25-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_25-headless/Dockerfile b/amazoncorretto_25.0.5-al2027-headless/Dockerfile
similarity index 64%
copy from amazoncorretto_25-headless/Dockerfile
copy to amazoncorretto_25.0.5-al2027-headless/Dockerfile
index 08a49dc..6e830a4 100644
--- a/amazoncorretto_25-headless/Dockerfile
+++ b/amazoncorretto_25.0.5-al2027-headless/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=25.0.5.0.10-1
 ARG resource_version=25.0.5.0.10
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-25-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-25-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-25-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_25-alpine-jdk/Dockerfile b/amazoncorretto_25.0.5-alpine3.24-slim/Dockerfile
similarity index 59%
copy from amazoncorretto_25-alpine-jdk/Dockerfile
copy to amazoncorretto_25.0.5-alpine3.24-slim/Dockerfile
index 94356e2..5cd330d 100644
--- a/amazoncorretto_25-alpine-jdk/Dockerfile
+++ b/amazoncorretto_25.0.5-alpine3.24-slim/Dockerfile
@@ -4,6 +4,9 @@ ARG version=25.0.5.0.10
 
 # Please note that the THIRD-PARTY-LICENSE could be out of date if the base image has been updated recently.
 # The Corretto team will update this file but you may see a few days' delay.
+#
+# Slim:
+#   JLink is used (retaining all modules) to create a slimmer version of the JDK excluding man-pages, header files and debugging symbols - saving ~113MB.
 RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads/resources/licenses/alpine/THIRD-PARTY-LICENSES-20200824.tar.gz && \
     echo "82f3e50e71b2aee21321b2b33de372feed5befad6ef2196ddec92311bc09becb  /THIRD-PARTY-LICENSES-20200824.tar.gz" | sha256sum -c - && \
     tar x -ovzf THIRD-PARTY-LICENSES-20200824.tar.gz && \
@@ -12,8 +15,12 @@ RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads
     SHA_SUM="6cfdf08be09f32ca298e2d5bd4a359ee2b275765c09b56d514624bf831eafb91" && \
     echo "${SHA_SUM}  /etc/apk/keys/amazoncorretto.rsa.pub" | sha256sum -c - && \
     echo "https://apk.corretto.aws" >> /etc/apk/repositories && \
-    apk add --no-cache amazon-corretto-25=$version-r0 && \
-    rm -rf /usr/lib/jvm/java-25-amazon-corretto/lib/src.zip
+    apk add --no-cache amazon-corretto-25=$version-r0 binutils && \
+    /usr/lib/jvm/default-jvm/bin/jlink --add-modules "$(java --list-modules | sed -e 's/@[0-9].*$/,/' | tr -d \\n)" --no-man-pages --no-header-files --strip-debug --output /opt/corretto-slim && \
+    apk del binutils amazon-corretto-25 && \
+    mkdir -p /usr/lib/jvm/ && \
+    mv /opt/corretto-slim /usr/lib/jvm/java-25-amazon-corretto && \
+    ln -sfn /usr/lib/jvm/java-25-amazon-corretto /usr/lib/jvm/default-jvm
 
 
 ENV LANG=C.UTF-8
diff --git a/amazoncorretto_27.0.1/Dockerfile b/amazoncorretto_27-al2027-jdk/Dockerfile
similarity index 54%
copy from amazoncorretto_27.0.1/Dockerfile
copy to amazoncorretto_27-al2027-jdk/Dockerfile
index 19733a3..62eccd0 100644
--- a/amazoncorretto_27.0.1/Dockerfile
+++ b/amazoncorretto_27-al2027-jdk/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=27.0.1.0.11-1
 ARG resource_version=27.0.1.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-27-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-devel-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-jmods-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-27-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-devel-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-jmods-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-27-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_27-headful/Dockerfile b/amazoncorretto_27.0.1-al2027-headful/Dockerfile
similarity index 60%
copy from amazoncorretto_27-headful/Dockerfile
copy to amazoncorretto_27.0.1-al2027-headful/Dockerfile
index 16b15f3..95ba19d 100644
--- a/amazoncorretto_27-headful/Dockerfile
+++ b/amazoncorretto_27.0.1-al2027-headful/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=27.0.1.0.11-1
 ARG resource_version=27.0.1.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-27-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-27-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm" "java-27-amazon-corretto-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-27-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_27-headless/Dockerfile b/amazoncorretto_27.0.1-al2027-headless/Dockerfile
similarity index 64%
copy from amazoncorretto_27-headless/Dockerfile
copy to amazoncorretto_27.0.1-al2027-headless/Dockerfile
index ddfefe9..a8439d2 100644
--- a/amazoncorretto_27-headless/Dockerfile
+++ b/amazoncorretto_27.0.1-al2027-headless/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=27.0.1.0.11-1
 ARG resource_version=27.0.1.0.11
@@ -6,19 +6,19 @@ ARG package_version=1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-27-amazon-corretto-headless-$version.amzn2023.${package_version}.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-27-amazon-corretto-headless-$version.amzn2027.${package_version}.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resource_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-27-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
 
diff --git a/amazoncorretto_27-alpine-jdk/Dockerfile b/amazoncorretto_27.0.1-alpine3.24-slim/Dockerfile
similarity index 59%
copy from amazoncorretto_27-alpine-jdk/Dockerfile
copy to amazoncorretto_27.0.1-alpine3.24-slim/Dockerfile
index b16c443..2f19354 100644
--- a/amazoncorretto_27-alpine-jdk/Dockerfile
+++ b/amazoncorretto_27.0.1-alpine3.24-slim/Dockerfile
@@ -4,6 +4,9 @@ ARG version=27.0.1.0.11
 
 # Please note that the THIRD-PARTY-LICENSE could be out of date if the base image has been updated recently.
 # The Corretto team will update this file but you may see a few days' delay.
+#
+# Slim:
+#   JLink is used (retaining all modules) to create a slimmer version of the JDK excluding man-pages, header files and debugging symbols - saving ~113MB.
 RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads/resources/licenses/alpine/THIRD-PARTY-LICENSES-20200824.tar.gz && \
     echo "82f3e50e71b2aee21321b2b33de372feed5befad6ef2196ddec92311bc09becb  /THIRD-PARTY-LICENSES-20200824.tar.gz" | sha256sum -c - && \
     tar x -ovzf THIRD-PARTY-LICENSES-20200824.tar.gz && \
@@ -12,8 +15,12 @@ RUN wget -O /THIRD-PARTY-LICENSES-20200824.tar.gz https://corretto.aws/downloads
     SHA_SUM="6cfdf08be09f32ca298e2d5bd4a359ee2b275765c09b56d514624bf831eafb91" && \
     echo "${SHA_SUM}  /etc/apk/keys/amazoncorretto.rsa.pub" | sha256sum -c - && \
     echo "https://apk.corretto.aws" >> /etc/apk/repositories && \
-    apk add --no-cache amazon-corretto-27=$version-r0 && \
-    rm -rf /usr/lib/jvm/java-27-amazon-corretto/lib/src.zip
+    apk add --no-cache amazon-corretto-27=$version-r0 binutils && \
+    /usr/lib/jvm/default-jvm/bin/jlink --add-modules "$(java --list-modules | sed -e 's/@[0-9].*$/,/' | tr -d \\n)" --no-man-pages --no-header-files --strip-debug --output /opt/corretto-slim && \
+    apk del binutils amazon-corretto-27 && \
+    mkdir -p /usr/lib/jvm/ && \
+    mv /opt/corretto-slim /usr/lib/jvm/java-27-amazon-corretto && \
+    ln -sfn /usr/lib/jvm/java-27-amazon-corretto /usr/lib/jvm/default-jvm
 
 
 ENV LANG=C.UTF-8
diff --git a/amazoncorretto_latest/Dockerfile b/amazoncorretto_8-al2027-jdk/Dockerfile
similarity index 60%
copy from amazoncorretto_latest/Dockerfile
copy to amazoncorretto_8-al2027-jdk/Dockerfile
index 793d898..8b6787e 100644
--- a/amazoncorretto_latest/Dockerfile
+++ b/amazoncorretto_8-al2027-jdk/Dockerfile
@@ -1,4 +1,4 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=1.8.0_512.b09-1
 
@@ -6,19 +6,19 @@ ARG version=1.8.0_512.b09-1
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
     && export resouce_version=$(echo $version | tr '-' '.' | tr '_' '.'| tr -d "b" | awk -F. '{print $2"."$4"."$5"."$6}') \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-1.8.0-amazon-corretto-$version.amzn2023.${ARCH}.rpm" "java-1.8.0-amazon-corretto-devel-$version.amzn2023.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-1.8.0-amazon-corretto-$version.amzn2027.${ARCH}.rpm" "java-1.8.0-amazon-corretto-devel-$version.amzn2027.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resouce_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y fontconfig ${CORRETTO_TEMP}/*.rpm \
     && popd \
     && rm -rf /usr/lib/jvm/java-1.8.0-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && rm -rf /var/cache/yum \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf
diff --git a/amazoncorretto_8-jre/Dockerfile b/amazoncorretto_8u512-al2027-jre/Dockerfile
similarity index 67%
copy from amazoncorretto_8-jre/Dockerfile
copy to amazoncorretto_8u512-al2027-jre/Dockerfile
index ba9bb06..f431b1b 100644
--- a/amazoncorretto_8-jre/Dockerfile
+++ b/amazoncorretto_8u512-al2027-jre/Dockerfile
@@ -1,24 +1,24 @@
-FROM amazonlinux:2023
+FROM amazonlinux:2027
 
 ARG version=1.8.0_512.b09-1
 
 RUN set -eux \
     && ARCH="$(rpm --query --queryformat='%{ARCH}' rpm)" \
     && export resouce_version=$(echo $version | tr '-' '.' | tr '_' '.'| tr -d "b" | awk -F. '{print $2"."$4"."$5"."$6}') \
-    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2023 \
+    && rpm --import file:///etc/pki/rpm-gpg/RPM-GPG-KEY-amazon-linux-2027 \
     && echo "localpkg_gpgcheck=1" >> /etc/dnf/dnf.conf \
-    && CORRETO_TEMP=$(mktemp -d) \
-    && pushd ${CORRETO_TEMP} \
-    && RPM_LIST=("java-1.8.0-amazon-corretto-$version.amzn2023.${ARCH}.rpm") \
-    && for rpm in ${RPM_LIST[@]}; do \
+    && CORRETTO_TEMP=$(mktemp -d) \
+    && pushd ${CORRETTO_TEMP} \
+    && RPM_LIST=("java-1.8.0-amazon-corretto-$version.amzn2027.${ARCH}.rpm") \
+    && for rpm in "${RPM_LIST[@]}"; do \
     curl --fail -O https://corretto.aws/downloads/resources/${resouce_version}/${rpm} \
-    && rpm -K "${CORRETO_TEMP}/${rpm}" | grep -F "${CORRETO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
+    && rpm -K "${CORRETTO_TEMP}/${rpm}" | grep -F "${CORRETTO_TEMP}/${rpm}: digests signatures OK" || exit 1; \
     done \
-    && dnf install -y ${CORRETO_TEMP}/*.rpm \
+    && dnf install -y fontconfig ${CORRETTO_TEMP}/*.rpm \
     && alternatives --install /usr/lib/jvm/java-1.8.0-amazon-corretto java-1.8.0-amazon-corretto /usr/lib/jvm/java-1.8.0-amazon-corretto.${ARCH} 100 \
     && popd \
     && rm -rf /usr/lib/jvm/java-1.8.0-amazon-corretto.${ARCH}/lib/src.zip \
-    && rm -rf ${CORRETO_TEMP} \
+    && rm -rf ${CORRETTO_TEMP} \
     && dnf clean all \
     && sed -i '/localpkg_gpgcheck=1/d' /etc/dnf/dnf.conf

Relevant Maintainers:

@mmm-choi

mmm-choi commented Nov 9, 2026

Copy link
Copy Markdown
Contributor Author

Looks like the failures are infra/transient issues and not related to the update.
I think retries will fix it.

@mmm-choi

Copy link
Copy Markdown
Contributor Author

Hmm, the other three failures with the same error passed on retry, but this one failed again. Could still be flaky?

The dockerfile builds fine locally for me.

@tianon

tianon commented Nov 10, 2026

Copy link
Copy Markdown
Member

A heads-up on the new alpine-slim tags: I don't think the naming lines up very well with how slim is used elsewhere in the program, so I wanted to raise it before reviewing the rest of this too deeply.

Elsewhere in DOI, slim is documented as "does not contain the common packages contained in the default tag and only contains the minimal packages needed to run <image>". alpine variants are already supposed to be minimal ("it's uncommon for additional related tools (such as git or bash) to be included"), so alpine-slim reads as "minimal minimal", and it isn't obvious from the tag how it differs from 17-alpine3.24. What does it drop compared to the existing Alpine variants, and how much smaller is it? Whatever the answer, it'd be good to put it in the image description so users can tell them apart. (nginx has an alpine-slim too, and we had the same question there: why a separate variant instead of making alpine smaller?)

So to put that in another shorter way, the very existence of a "slim alpine" tag reads to me as a bug in the "alpine" tags themselves.

@mmm-choi

mmm-choi commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor Author

Hi @tianon!
Thank you for the information!

the -slim variant is definitely smaller.

-alpine-slim uses jlink to keep all Java modules and javac, while removing man pages, JNI headers, debug info, jmods, and the prebuilt CDS archive. Corretto 17/x64 example: ~298 MB (alpine) vs. ~162 MB (alpine-slim) uncompressed. Use -alpine when you need JNI headers or jmods.

Updated the documentation here: corretto/corretto-docker#309

It is a slim version of an already slimmed down version, I agree with that.
-alpine includes the full Corretto JDK, while -alpine-slim trims the JDK itself. Removing JNI headers and jmods from existing -alpine tags could break downstream builds, so separate tags preserve compatibility. Being cautious about preserving the compatibility. 😄

@tianon

tianon commented Nov 11, 2026

Copy link
Copy Markdown
Member

That makes sense -- is this "slim" naming something you're going to use consistently upstream (ie, is "Corretto Slim" a term that makes sense?) or something invented just for the Docker images? (the former makes this more reasonable where the latter gives me pause)

@cost0much

cost0much commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

"Corretto Slim" will not exist - or if anything does get created it'd probably fall under some form of "JRE" moniker (as that's what users are more familiar with). This "slim" term might only apply to the docker images.

Adoptium has a good article regarding this. Basically, these "slim" images save space by creating a custom Java runtime off of the original JDK binary: to be sure, these new images technically do not bundle the normally distributed Corretto package/binary. Prior to Java 11, "JRE" binaries probably are the closest concept to reduced jlinked images. But generally, it's recommended for users to create their own "JRE" image, as each application has its own module requirements, so there isn't a 1-size fits all. Of course, there's always some users requesting "slimmed" Java runtimes as probably they don't want to do the work and prefer a default.

These images might warrant some more discussion.

@tianon

tianon commented Nov 11, 2026

Copy link
Copy Markdown
Member

Yeah, I'm familiar with (and have even created some 😂) jlink builds, and I guess it's just the "slim" naming that I'm struggling with here. If it weren't for them still including javac, I would be inclined to call them a JRE or "runtime" image instead, but even with javac I think that's still a more appropriate name than just "slim" (because they're not really a full JDK anymore, but they aren't exactly a slim JDK either - they're something in between JRE and JDK).

@tianon

tianon commented Nov 11, 2026

Copy link
Copy Markdown
Member

(fwiw, distributions like Temurin, Semeru, SapMachine, and Azul Zulu have been doing this for a while and just call them jre in all their marketing, tags, etc)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants