Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Modules Example

Criando uma imagem docker leve para executar um pacote java simples Utilizando jdeps and jlink para permitir a criação de uma JRE customizada para a execução do projeto

FROM eclipse-temurin:17-jdk as build
RUN addgroup java; adduser --ingroup java --disabled-password java
USER java

WORKDIR /app

COPY .mvn/ .mvn
COPY mvnw pom.xml ./
RUN ./mvnw dependency:go-offline
COPY src ./src
RUN ./mvnw package -DskipTests
RUN jdeps --ignore-missing-deps -q \
    --recursive \
    --multi-release 17 \
    --print-module-deps \
    --class-path './target/dependency/*' \
    ./target/java-modules-example-1.0.jar > ./deps.info
RUN jlink \
    --add-modules $(cat ./deps.info) \
    --strip-debug \
    --compress 2 \
    --no-header-files \
    --no-man-pages \
    --output ./myjre

FROM alpine:3.18.3
ENV JAVA_HOME /user/java/jdk17
ENV PATH $JAVA_HOME/bin:$PATH
COPY --from=build /app/myjre $JAVA_HOME
WORKDIR /app
COPY --from=build /app/target/java-modules-example-1.0.jar /app/
ENTRYPOINT java -jar java-modules-example-1.0.jar

About

Criando uma aplicação java simples com suporte a geração de imagem slim com JRE customizada para módulos

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages