5 releases (1 stable)
1.0.0 | Sep 27, 2022 |
---|---|
0.2.1 | Aug 1, 2022 |
0.2.0 | Aug 1, 2022 |
0.1.3 | Aug 1, 2022 |
0.1.0 | Jul 31, 2022 |
#721 in Unix APIs
18KB
339 lines
spring-boot-layertools
Extract Spring Boot layered JARs up to ✨10x faster✨ than the built-in Java CLI.
Usage
This tool is intended to be used as a Docker multi-stage builder image. For example:
FROM aramperes/spring-boot-layertools:latest as layertools
# Copy your 'fat layered jar'
COPY ./target/*.jar layered.jar
# Extract layers
RUN spring-boot-layertools layered.jar extract
# Copy layers to your final image
FROM eclipse-temurin:17-jre-alpine
COPY --from=layertools /home/layertools/spring-boot-loader /
RUN true
COPY --from=layertools /home/layertools/dependencies /
RUN true
COPY --from=layertools /home/layertools/snapshot-dependencies /
RUN true
COPY --from=layertools /home/layertools/application /
RUN true
ENTRYPOINT ["java", "org.springframework.boot.loader.JarLauncher"]
Command-line Options
USAGE:
spring-boot-layertools <jar> <SUBCOMMAND>
ARGS:
<jar> The layered Spring Boot jar to extract
OPTIONS:
-h, --help Print help information
-V, --version Print version information
SUBCOMMANDS:
classpath List classpath dependencies from the jar
extract Extracts layers from the jar for image creation
help Print this message or the help of the given subcommand(s)
list List layers from the jar that can be extracted
License
MIT License. See LICENSE
for details. Copyright © 2022 Aram Peres.
"Spring" and "Spring Boot" are trademarks of Pivotal Software, Inc.
Dependencies
~7.5MB
~127K SLoC