summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Dockerfile15
-rw-r--r--docker-compose.yml27
-rw-r--r--src/main/resources/application.properties17
3 files changed, 51 insertions, 8 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..63481f7
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,15 @@
+# Stage 1: Build the JAR file
+FROM maven:3.8.5-openjdk-17 AS build
+WORKDIR /app
+COPY mvnw pom.xml ./
+COPY .mvn .mvn
+COPY src src
+RUN chmod +x mvnw
+RUN ./mvnw clean package -Dmaven.test.skip=true
+
+# Stage 2: Run the JAR file
+FROM openjdk:17-alpine
+RUN addgroup -S spring && adduser -S spring -G spring
+USER spring:spring
+COPY --from=build /app/target/markr-0.0.1-SNAPSHOT.jar /markr.jar
+ENTRYPOINT ["java", "-jar", "/markr.jar"] \ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000..0f45dc0
--- /dev/null
+++ b/docker-compose.yml
@@ -0,0 +1,27 @@
+services:
+ postgres:
+ image: postgres:latest
+ container_name: postgres
+ environment:
+ POSTGRES_USER: markr_prod
+ POSTGRES_PASSWORD: CpfzDA3nR3jH9Ky4
+ POSTGRES_DB: markr
+ ports:
+ - "5432:5432"
+ volumes:
+ - postgres_data:/var/lib/postgresql/data
+
+ markr_service:
+ build: .
+ container_name: markr_service
+ ports:
+ - "8080:8080"
+ depends_on:
+ - postgres
+ environment:
+ SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/markr
+ SPRING_DATASOURCE_USERNAME: markr_prod
+ SPRING_DATASOURCE_PASSWORD: CpfzDA3nR3jH9Ky4
+
+volumes:
+ postgres_data:
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 788b1a5..42e8f9a 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -1,11 +1,12 @@
spring.application.name=markr
-# H2 Database configuration
-spring.datasource.url=jdbc:h2:mem:testdb
-spring.datasource.driverClassName=org.h2.Driver
-spring.datasource.username=sa
-spring.datasource.password=password
-spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
-spring.h2.console.enabled=true
-spring.h2.console.path=/h2-console
+# PostgreSQL Configuration
+spring.datasource.url=jdbc:postgresql://localhost:5432/markr
+spring.datasource.username=markr_prod
+spring.datasource.password=CpfzDA3nR3jH9Ky4
+spring.datasource.driver-class-name=org.postgresql.Driver
+
+# Hibernate Configuration
+spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect
spring.jpa.hibernate.ddl-auto=update
+spring.jpa.show-sql=false \ No newline at end of file