Skip to content

Commit 36038e5

Browse files
authored
Merge pull request #17 from nenadjakic/feature/docker-compose
Added Dockerfile and Docker Compose files.
2 parents f1c4088 + 8356240 commit 36038e5

File tree

3 files changed

+65
-0
lines changed

3 files changed

+65
-0
lines changed

Dockerfile

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
FROM eclipse-temurin:21 AS build
2+
3+
WORKDIR /app
4+
5+
COPY src/ ./src/
6+
COPY build.gradle.kts .
7+
COPY gradle.properties .
8+
COPY gradlew .
9+
COPY settings.gradle.kts .
10+
COPY gradle/ ./gradle
11+
12+
RUN ./gradlew clean build -x test
13+
14+
FROM eclipse-temurin:21
15+
16+
WORKDIR /app
17+
18+
COPY --from=build /app/build/libs/eav-platform.jar .
19+
CMD ["java", "-jar", "./eav-platform.jar"]

build.gradle.kts

+4
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ dependencies {
3535

3636
}
3737

38+
tasks.bootJar {
39+
archiveFileName.set("${archiveBaseName.get()}.${archiveExtension.get()}")
40+
}
41+
3842
tasks.test {
3943
useJUnitPlatform()
4044
finalizedBy(tasks.jacocoTestReport)

docker-compose.yml

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
version: '3.8'
2+
services:
3+
eav-platform-database:
4+
image: postgres:16.1
5+
container_name: eav-platform-database
6+
restart: unless-stopped
7+
environment:
8+
POSTGRES_DB: eav-platform
9+
POSTGRES_USER: postgres
10+
POSTGRES_PASSWORD: postgres
11+
logging:
12+
options:
13+
max-size: 10m
14+
max-file: "5"
15+
ports:
16+
- "9432:5432"
17+
networks:
18+
- eav-platform-network
19+
volumes:
20+
- eav-platform-data:/var/lib/postgresql/data
21+
- ./.scripts/001-init-db-schema.sql:/docker-entrypoint-initdb.d/init.sql
22+
23+
eav-platform:
24+
build:
25+
context: .
26+
dockerfile: Dockerfile
27+
container_name: eav-platform-app
28+
depends_on:
29+
- eav-platform-database
30+
environment:
31+
SPRING_DATASOURCE_URL: jdbc:postgresql://eav-platform-database:5432/eav-platform
32+
SPRING_DATASOURCE_USERNAME: postgres
33+
SPRING_DATASOURCE_PASSWORD: postgres
34+
ports:
35+
- "9090:8080"
36+
networks:
37+
- eav-platform-network
38+
39+
volumes:
40+
eav-platform-data:
41+
networks:
42+
eav-platform-network:

0 commit comments

Comments
 (0)