Can now be deployed
This commit is contained in:
parent
f220c187c1
commit
be0ec073a3
23
Dockerfile
Normal file
23
Dockerfile
Normal file
@ -0,0 +1,23 @@
|
||||
FROM gradle:jdk21 AS builder
|
||||
|
||||
WORKDIR /build/
|
||||
ADD src /build/src/
|
||||
ADD build.gradle /build/
|
||||
ADD settings.gradle /build/
|
||||
ADD versions.properties /build/
|
||||
|
||||
|
||||
RUN gradle assemble
|
||||
|
||||
FROM eclipse-temurin:21-noble
|
||||
WORKDIR /opt/
|
||||
ADD "https://download.red-gate.com/maven/release/com/redgate/flyway/flyway-commandline/11.9.1/flyway-commandline-11.9.1-linux-x64.tar.gz" /opt/flyway.tar.gz
|
||||
RUN tar -xvzf /opt/flyway.tar.gz -C /opt/
|
||||
RUN ln -s /opt/flyway-11.9.1/flyway /usr/local/bin
|
||||
|
||||
WORKDIR /app/
|
||||
COPY --from=builder /build/build/libs/misael-beta.jar /app/misael.jar
|
||||
COPY --from=builder /build/build/resources/ /app/resources/
|
||||
ADD launcher.sh /app/
|
||||
|
||||
ENTRYPOINT ["bash","./launcher.sh"]
|
||||
13
README.md
Normal file
13
README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Misael
|
||||
|
||||
## For dev
|
||||
You need to setup a postgres server at localhost:5432, with user misael with password misael-dev
|
||||
|
||||
Then, you run the database migration `./gradlew flywayMigrate`
|
||||
|
||||
And finaly we run `./gradlew bootRun`
|
||||
|
||||
## For deployment
|
||||
The compose file is enough.
|
||||
|
||||
`launcher.sh` checks that the migrations are applied and then runs the spring boot server on port 8080
|
||||
@ -16,7 +16,7 @@ plugins {
|
||||
|
||||
|
||||
group = 'com.bernard'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
version = 'beta'
|
||||
|
||||
java {
|
||||
toolchain {
|
||||
@ -42,7 +42,6 @@ dependencies {
|
||||
implementation 'jakarta.validation:jakarta.validation-api:_'
|
||||
runtimeOnly 'org.webjars:jquery:_'
|
||||
developmentOnly Spring.boot.devTools
|
||||
developmentOnly 'org.springframework.boot:spring-boot-docker-compose:_'
|
||||
runtimeOnly 'org.postgresql:postgresql:_'
|
||||
testImplementation Spring.boot.test
|
||||
testRuntimeOnly 'org.junit.platform:junit-platform-launcher:_'
|
||||
@ -59,7 +58,7 @@ dependencies {
|
||||
}
|
||||
|
||||
flyway {
|
||||
url = "jdbc:postgresql://127.0.0.1:10051/misael"
|
||||
url = "jdbc:postgresql://127.0.0.1:5432/misael"
|
||||
user = 'misael'
|
||||
password = 'misael-dev'
|
||||
driver = 'org.postgresql.Driver'
|
||||
|
||||
17
compose.yaml
17
compose.yaml
@ -5,5 +5,20 @@ services:
|
||||
- 'POSTGRES_DB=misael'
|
||||
- 'POSTGRES_PASSWORD=misael-dev'
|
||||
- 'POSTGRES_USER=misael'
|
||||
networks:
|
||||
- misanetwork
|
||||
|
||||
misael:
|
||||
image: 'misael:latest'
|
||||
build: .
|
||||
environment:
|
||||
- 'MISAEL_DATABASE=jdbc:postgresql://postgres:5432/misael'
|
||||
- 'MISAEL_PASSWORD=misael-dev'
|
||||
ports:
|
||||
- '10051:5432'
|
||||
- 8080:8080
|
||||
networks:
|
||||
- misanetwork
|
||||
|
||||
networks:
|
||||
misanetwork:
|
||||
driver: bridge
|
||||
|
||||
6
launcher.sh
Normal file
6
launcher.sh
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
echo "Checking Database Migration"
|
||||
flyway "-url=$MISAEL_DATABASE" -user=misael "-password=$MISAEL_PASSWORD" -locations="filesystem:resources/main/db/migration/" -schemas=misael migrate
|
||||
|
||||
echo "Running" java -jar misael.jar --spring.datasource.url=$MISAEL_DATABASE --spring.datasource.password=$MISAEL_PASSWORD
|
||||
java -jar misael.jar --spring.datasource.url=$MISAEL_DATABASE --spring.datasource.password=$MISAEL_PASSWORD
|
||||
@ -1,8 +1,9 @@
|
||||
spring:
|
||||
datasource:
|
||||
url: jdbc:postgres://127.0.0.1:10051/misael
|
||||
url: jdbc:postgresql://127.0.0.1:5432/misael
|
||||
username: misael
|
||||
password: misael-dev
|
||||
driver-class-name: org.postgresql.Driver
|
||||
hikari:
|
||||
schema: misael
|
||||
flyway:
|
||||
|
||||
BIN
src/main/resources/static/images/favicon.ico
Normal file
BIN
src/main/resources/static/images/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
Loading…
x
Reference in New Issue
Block a user