aplication.properties está:
spring.thymeleaf.mode=html
spring.thymeleaf.cache=false
#server.port=8080
spring.main.banner-mode=off
logging.level.org.springframework=ERROR
spring.datasource.url=jdbc:postgresql://localhost:5432/senai
spring.datasource.username=postgres
spring.datasource.password=sueder
#spring.jpa.show-sql=true
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
spring.jpa.hibernate.ddl-auto=update
spring.flyway.baseline-on-migrate = true
docker-compose.yml
version: '3.8'
services:
senai:
image: 'petter-senai:latest'
build:
context: .
target: development
ports:
- "8080:8080"
depends_on:
- database
environment:
- SPRING_DATASOURCE_URL=jdbc:postgresql://database:5432/senai
- SPRING_DATASOURCE_USERNAME=postgres
- SPRING_DATASOURCE_PASSWORD=sueder
- SPRING_JPA_HIBERNATE_DDL_AUTO=update
volumes:
- ./:/app
database:
image: postgres:10.17
restart: always
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=sueder
- POSTGRES_DB=senai
ports:
- "5432:5432"
volumes:
- pg-data:/var/lib/postgresql/data
volumes:
pg-data:
dockerfile
# syntax=docker/dockerfile:1
FROM eclipse-temurin:17-jdk-jammy as base
WORKDIR /app
COPY .mvn/ .mvn
COPY mvnw pom.xml ./
RUN ./mvnw dependency:resolve
COPY src ./src
FROM base as development
CMD ["./mvnw", "spring-boot:run", "-Dspring-boot.run.profiles=postgres", "-Dspring-boot.run.jvmArguments='-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000'"]
FROM base as build
RUN ./mvnw package
FROM eclipse-temurin:17-jre-jammy as production
EXPOSE 8080
COPY --from=build /app/target/demo-0.0.1-SNAPSHOT-*.jar /demo-0.0.1-SNAPSHOT.jar
CMD ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/demo-0.0.1-SNAPSHOT.jar"]