blob: 8687266c607bf9451a67c0aef77cd10bd5183d95 [file] [log] [blame]
Matthias Andreas Benkarda9074952022-05-13 20:47:42 +02001// SPDX-FileCopyrightText: © 2022 Matthias Andreas Benkard <code@mail.matthias.benkard.de>
2//
3// SPDX-License-Identifier: GFDL-1.3-or-later
4
5= openjdk-runtime
6Matthias Andreas Benkard
7// Meta
8:experimental:
9:data-uri:
10:sectnums:
11:toc:
12:stem:
13:keywords: mulk
14// Settings
15:icons: font
16:source-highlighter: rouge
17
18A container image that contains an OpenJDK runtime suitable for running
19modern web services.
20
21
22== Summary
23
24This container image ships the latest OpenJDK feature release from
25https://jdk.java.net[jdk.java.net] on top of a
26https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/building_running_and_managing_containers/assembly_types-of-container-images_building-running-and-managing-containers#con_understanding-the-ubi-micro-images_assembly_types-of-container-images[Red
27Hat UBI Micro] base.
28
29The module set was selected for
30https://gerrit.benkard.de/plugins/gitiles/mulkcms2/[MulkCMS 2], which
31is a typical Quarkus application. It will very likely work for other
32typical Quarkus applications.
33
34
35== Building
36
37[source,shell]
38----
39./prepare
40docker build -t $IMAGE_NAME .
41----
42
43
44== Customization
45
46You may want to customize the module set included in the JDK.
47
48For example, specifying `ALL-MODULE-PATH` includes all modules
49included in the OpenJDK distribution:
50
51[source,dockerfile]
52----
53RUN /jdk/*/bin/jlink \
54 -J-XX:MaxRAMPercentage=75 \
55 --add-modules ALL-MODULE-PATH \ #<1>
56 --compress=1 \
57 --no-man-pages \
58 --strip-debug \
59 --output /java
60----
61<1> Include all JDK modules.
62
63
64== Usage
65
66[source,shell]
67----
68docker run $IMAGE_NAME java -version
69----