add dockerfiles
This commit is contained in:
parent
8cd03f57de
commit
7aa3baa31d
0
.drone.yml
Normal file
0
.drone.yml
Normal file
33
Dockerfile
Normal file
33
Dockerfile
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
FROM eclipse-temurin:17 as app-build
|
||||||
|
ENV RELEASE=17
|
||||||
|
|
||||||
|
WORKDIR /opt/build
|
||||||
|
COPY ./target/chatgpt-assistant.jar ./application.jar
|
||||||
|
|
||||||
|
RUN java -Djarmode=layertools -jar application.jar extract
|
||||||
|
RUN $JAVA_HOME/bin/jlink \
|
||||||
|
--add-modules `jdeps --ignore-missing-deps -q -recursive --multi-release ${RELEASE} --print-module-deps -cp 'dependencies/BOOT-INF/lib/*' application.jar`,jdk.crypto.cryptoki \
|
||||||
|
--strip-java-debug-attributes \
|
||||||
|
--no-man-pages \
|
||||||
|
--no-header-files \
|
||||||
|
--compress=2 \
|
||||||
|
--output jdk
|
||||||
|
|
||||||
|
FROM debian:buster-slim
|
||||||
|
|
||||||
|
ARG BUILD_PATH=/opt/build
|
||||||
|
ENV JAVA_HOME=/opt/jdk
|
||||||
|
ENV PATH "${JAVA_HOME}/bin:${PATH}"
|
||||||
|
|
||||||
|
RUN apt update && groupadd --gid 1000 spring-app \
|
||||||
|
&& useradd --uid 1000 --gid spring-app --shell /bin/bash --create-home spring-app
|
||||||
|
|
||||||
|
USER spring-app:spring-app
|
||||||
|
WORKDIR /opt/workspace
|
||||||
|
|
||||||
|
COPY --from=app-build $BUILD_PATH/jdk $JAVA_HOME
|
||||||
|
COPY --from=app-build $BUILD_PATH/spring-boot-loader/ ./
|
||||||
|
COPY --from=app-build $BUILD_PATH/dependencies/ ./
|
||||||
|
COPY --from=app-build $BUILD_PATH/application/ ./
|
||||||
|
|
||||||
|
ENTRYPOINT ["java", "-Dfile.encoding=UTF8", "-Dconsole.encoding=UTF8", "org.springframework.boot.loader.JarLauncher"]
|
34
Dockerfile-develop
Normal file
34
Dockerfile-develop
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
FROM eclipse-temurin:17 as app-build
|
||||||
|
ENV RELEASE=17
|
||||||
|
|
||||||
|
WORKDIR /opt/build
|
||||||
|
COPY ./target/chatgpt-assistant.jar ./application.jar
|
||||||
|
|
||||||
|
RUN java -Djarmode=layertools -jar application.jar extract
|
||||||
|
RUN $JAVA_HOME/bin/jlink \
|
||||||
|
--add-modules `jdeps --ignore-missing-deps -q -recursive --multi-release ${RELEASE} --print-module-deps -cp 'dependencies/BOOT-INF/lib/*':'snapshot-dependencies/BOOT-INF/lib/*' application.jar`,jdk.crypto.cryptoki \
|
||||||
|
--strip-java-debug-attributes \
|
||||||
|
--no-man-pages \
|
||||||
|
--no-header-files \
|
||||||
|
--compress=2 \
|
||||||
|
--output jdk
|
||||||
|
|
||||||
|
FROM debian:buster-slim
|
||||||
|
|
||||||
|
ARG BUILD_PATH=/opt/build
|
||||||
|
ENV JAVA_HOME=/opt/jdk
|
||||||
|
ENV PATH "${JAVA_HOME}/bin:${PATH}"
|
||||||
|
|
||||||
|
RUN apt update && groupadd --gid 1000 spring-app \
|
||||||
|
&& useradd --uid 1000 --gid spring-app --shell /bin/bash --create-home spring-app
|
||||||
|
|
||||||
|
USER spring-app:spring-app
|
||||||
|
WORKDIR /opt/workspace
|
||||||
|
|
||||||
|
COPY --from=app-build $BUILD_PATH/jdk $JAVA_HOME
|
||||||
|
COPY --from=app-build $BUILD_PATH/spring-boot-loader/ ./
|
||||||
|
COPY --from=app-build $BUILD_PATH/dependencies/ ./
|
||||||
|
COPY --from=app-build $BUILD_PATH/snapshot-dependencies/ ./
|
||||||
|
COPY --from=app-build $BUILD_PATH/application/ ./
|
||||||
|
|
||||||
|
ENTRYPOINT ["java", "-Dfile.encoding=UTF8", "-Dconsole.encoding=UTF8", "org.springframework.boot.loader.JarLauncher"]
|
1
pom.xml
1
pom.xml
@ -99,6 +99,7 @@
|
|||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||||
<configuration>
|
<configuration>
|
||||||
|
<finalName>chatgpt-assistant</finalName>
|
||||||
<excludes>
|
<excludes>
|
||||||
<exclude>
|
<exclude>
|
||||||
<groupId>org.projectlombok</groupId>
|
<groupId>org.projectlombok</groupId>
|
||||||
|
Loading…
Reference in New Issue
Block a user