mirror of
https://github.com/fabioformosa/quartz-manager.git
synced 2026-05-14 22:00:30 +09:00
moved the web-showcase from war to jar and added a dockerfile
This commit is contained in:
2
.dockerignore
Normal file
2
.dockerignore
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
# .dockerignore
|
||||||
|
quartz-manager-frontend/node_modules
|
||||||
34
Dockerfile
Normal file
34
Dockerfile
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
FROM maven:3.9.8-eclipse-temurin-21 AS build
|
||||||
|
|
||||||
|
# Set the working directory
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# Copy the pom.xml and download dependencies
|
||||||
|
COPY quartz-manager-parent/pom.xml ./quartz-manager-parent/
|
||||||
|
COPY quartz-manager-parent/lombok.config ./quartz-manager-parent/
|
||||||
|
COPY quartz-manager-parent/quartz-manager-common ./quartz-manager-parent/quartz-manager-common
|
||||||
|
COPY quartz-manager-parent/quartz-manager-starter-api ./quartz-manager-parent/quartz-manager-starter-api
|
||||||
|
COPY quartz-manager-parent/quartz-manager-starter-persistence ./quartz-manager-parent/quartz-manager-starter-persistence
|
||||||
|
COPY quartz-manager-parent/quartz-manager-starter-security ./quartz-manager-parent/quartz-manager-starter-security
|
||||||
|
COPY quartz-manager-parent/quartz-manager-starter-ui ./quartz-manager-parent/quartz-manager-starter-ui
|
||||||
|
COPY quartz-manager-parent/quartz-manager-web-showcase ./quartz-manager-parent/quartz-manager-web-showcase
|
||||||
|
COPY quartz-manager-parent/lombok.config ./quartz-manager-parent/
|
||||||
|
COPY quartz-manager-frontend ./quartz-manager-frontend
|
||||||
|
WORKDIR /app/quartz-manager-parent
|
||||||
|
RUN mvn clean package -DskipTests -P=build-webjar
|
||||||
|
|
||||||
|
|
||||||
|
# Stage 2: Create the final image
|
||||||
|
FROM openjdk:11-jre-slim
|
||||||
|
|
||||||
|
# Set the working directory
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# Copy the JAR file from the build stage
|
||||||
|
COPY --from=build /app/quartz-manager-parent/quartz-manager-web-showcase/target/*.jar app.jar
|
||||||
|
|
||||||
|
# Expose the application port
|
||||||
|
EXPOSE 8080
|
||||||
|
|
||||||
|
# Run the application
|
||||||
|
ENTRYPOINT ["java", "-jar", "app.jar"]
|
||||||
@@ -43,6 +43,7 @@
|
|||||||
<properties>
|
<properties>
|
||||||
<java.version>9</java.version>
|
<java.version>9</java.version>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
<org.projectlombok.version>1.18.30</org.projectlombok.version>
|
||||||
<maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>
|
<maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>
|
||||||
<maven-failsafe-plugin.version>2.22.0</maven-failsafe-plugin.version>
|
<maven-failsafe-plugin.version>2.22.0</maven-failsafe-plugin.version>
|
||||||
<jacoco-maven-plugin.version>0.8.8</jacoco-maven-plugin.version>
|
<jacoco-maven-plugin.version>0.8.8</jacoco-maven-plugin.version>
|
||||||
@@ -100,6 +101,11 @@
|
|||||||
<artifactId>quartz-manager-starter-ui</artifactId>
|
<artifactId>quartz-manager-starter-ui</artifactId>
|
||||||
<version>4.0.10-SNAPSHOT</version>
|
<version>4.0.10-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.projectlombok</groupId>
|
||||||
|
<artifactId>lombok</artifactId>
|
||||||
|
<version>${org.projectlombok.version}</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</dependencyManagement>
|
</dependencyManagement>
|
||||||
|
|
||||||
|
|||||||
@@ -8,9 +8,9 @@
|
|||||||
<version>4.0.10-SNAPSHOT</version>
|
<version>4.0.10-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>quartz-manager-web-showcase</artifactId>
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
<packaging>war</packaging>
|
<artifactId>quartz-manager-web-showcase</artifactId>
|
||||||
|
|
||||||
<name>Quartz Manager Web Showcase</name>
|
<name>Quartz Manager Web Showcase</name>
|
||||||
<description>A webapp that imports Quartz Manager API lib and the frontend webjar</description>
|
<description>A webapp that imports Quartz Manager API lib and the frontend webjar</description>
|
||||||
@@ -54,11 +54,6 @@
|
|||||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-tomcat</artifactId>
|
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
<artifactId>spring-boot-starter-test</artifactId>
|
||||||
@@ -123,7 +118,6 @@
|
|||||||
|
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
<pluginManagement>
|
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
@@ -146,7 +140,6 @@
|
|||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</pluginManagement>
|
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
package it.fabioformosa;
|
|
||||||
|
|
||||||
import lombok.Generated;
|
|
||||||
import org.springframework.boot.builder.SpringApplicationBuilder;
|
|
||||||
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* ServletInitializer needs to deploy quartz-manager into a servlet container as a war file
|
|
||||||
*
|
|
||||||
* @author Fabio Formosa
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
@Generated
|
|
||||||
public class ServletInitializer extends SpringBootServletInitializer {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
|
|
||||||
return application.sources(QuartzManagerDemoApplication.class);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user