You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.2 KiB
44 lines
1.2 KiB
FROM --platform=$BUILDPLATFORM maven:3.8.5-eclipse-temurin-17 AS builder
|
|
WORKDIR /workdir/server
|
|
COPY pom.xml /workdir/server/pom.xml
|
|
RUN mvn dependency:go-offline
|
|
|
|
COPY src /workdir/server/src
|
|
RUN mvn clean install
|
|
|
|
# FROM builder AS dev-envs
|
|
# RUN <<EOF
|
|
# apt-get update
|
|
# apt-get install -y --no-install-recommends git
|
|
# EOF
|
|
|
|
# RUN <<EOF
|
|
# useradd -s /bin/bash -m vscode
|
|
# groupadd docker
|
|
# usermod -aG docker vscode
|
|
# EOF
|
|
# # install Docker tools (cli, buildx, compose)
|
|
# COPY --from=gloursdocker/docker / /
|
|
# CMD ["mvn", "spring-boot:run"]
|
|
|
|
# FROM builder as prepare-production
|
|
# RUN mkdir -p target/dependency
|
|
# WORKDIR /workdir/server/target/dependency
|
|
# RUN jar -xf ../*.jar
|
|
|
|
# FROM eclipse-temurin:17-jre-focal
|
|
|
|
# EXPOSE 8080
|
|
# VOLUME /tmp
|
|
# ARG DEPENDENCY=/workdir/server/target/dependency
|
|
# COPY --from=prepare-production ${DEPENDENCY}/BOOT-INF/lib /app/lib
|
|
# COPY --from=prepare-production ${DEPENDENCY}/META-INF /app/META-INF
|
|
# COPY --from=prepare-production ${DEPENDENCY}/BOOT-INF/classes /app
|
|
# ENTRYPOINT ["java","-cp","app:app/lib/*","com.company.project.Application"]
|
|
|
|
|
|
FROM eclipse-temurin:8-jdk-alpine
|
|
VOLUME /tmp
|
|
ARG JAR_FILE
|
|
COPY --from=builder target/cicdTest-0.0.1-SNAPSHOT.jar app.jar
|
|
ENTRYPOINT ["java","-jar","/app.jar"] |