Commit 5145b869 authored by RenanMontenegro3's avatar RenanMontenegro3

feat: "adiciona docker-compose.yml e configuração .env para MySQL e Spring Boot"

parent 81f740b9
FROM maven:3.9-ibm-semeru-21-jammy AS builder
WORKDIR /app
COPY . /app
RUN mvn clean package
RUN ls /app/target
FROM openjdk:21 FROM openjdk:21
EXPOSE 9090 EXPOSE 8080
ADD target/docker-demo-app-two.jar docker-demo-app-two.jar COPY .env .
COPY --from=builder /app/target/*.jar docker-demo-app-two.jar
ENTRYPOINT ["java", "-jar", "/docker-demo-app-two.jar"] ENTRYPOINT ["java", "-jar", "/docker-demo-app-two.jar"]
\ No newline at end of file
version: '3.8'
services: services:
mysql: front:
image: mysql:8.0 build:
container_name: mysql-db context: ./aceite-tecnico-frontend
environment: image: aceite-tecnico-frontend:v1
MYSQL_ROOT_PASSWORD: root container_name: aceite-tecnico-front
MYSQL_DATABASE: porto
ports: ports:
- "3307:3306" - 8100:80
volumes: networks:
- mysql_data:/var/lib/mysql - aceite-net
backend:
build:
context: ./aceite-tecnico-backend
image: aceite-tecnico-backend:v1
container_name: aceite-tecnico-back
ports:
- 9090:8080
networks:
- aceite-net
app: mysql:
build: . image: mysql:9
container_name: spring-app container_name: aceite-tecnico-db
ports: ports:
- "8080:8080" - 3306:3306
depends_on: volumes:
- mysql - data:/var/lib/mysql
env_file:
- .env
environment: environment:
# Banco de dados MYSQL_DATABASE: porto
SPRING_DATASOURCE_URL: ${DB_URL_DOCKER} MYSQL_ROOT_PASSWORD: root
SPRING_DATASOURCE_USERNAME: ${DB_USERNAME} networks:
SPRING_DATASOURCE_PASSWORD: ${DB_PASSWORD} - aceite-net
SPRING_DATASOURCE_DRIVER_CLASS_NAME: ${DB_DRIVER_CLASS_NAME}
SPRING_JPA_DATABASE_PLATFORM: ${DB_PLATFORM}
# Upload
SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE: ${SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE}
SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE: ${SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE}
# E-mail
SPRING_MAIL_HOST: ${MAIL_HOST}
SPRING_MAIL_PORT: ${MAIL_PORT}
SPRING_MAIL_USERNAME: ${MAIL_USERNAME}
SPRING_MAIL_PASSWORD: ${MAIL_PASSWORD}
SPRING_MAIL_PROPERTIES_MAIL_SMTP_AUTH: ${MAIL_SMTP_AUTH}
SPRING_MAIL_PROPERTIES_MAIL_SMTP_STARTTLS_ENABLE: ${MAIL_SMTP_STARTTLS_ENABLE}
# JPA
SPRING_JPA_SHOW_SQL: ${JPA_SHOW_SQL}
SPRING_JPA_MERGE_ENTITY_COPY_OBSERVER: ${JPA_MERGE_ENTITY_COPY_OBSERVER}
SPRING_JPA_HIBERNATE_DDL_AUTO: ${JPA_HIBERNATE_DDL_AUTO}
SPRING_JPA_PROPERTIES_HIBERNATE_FORMAT_SQL: ${JPA_HIBERNATE_FORMAT_SQL}
# Paginação
SPRING_DATA_WEB_PAGEABLE_ONE_INDEXED_PARAMETERS: ${PAGEABLE_ONE_INDEXED_PARAMETERS}
SPRING_DATA_WEB_PAGEABLE_DEFAULT_PAGE_SIZE: ${PAGEABLE_DEFAULT_PAGE_SIZE}
SPRING_DATA_WEB_PAGEABLE_MAX_PAGE_SIZE: ${PAGEABLE_MAX_PAGE_SIZE}
# JWT
JWT_ACCESS_SECRET: ${JWT_ACCESS_SECRET}
JWT_ACCESS_EXPIRES_IN: ${JWT_ACCESS_EXPIRES_IN}
JWT_REFRESH_SECRET: ${JWT_REFRESH_SECRET}
JWT_REFRESH_EXPIRES_IN: ${JWT_REFRESH_EXPIRES_IN}
# Disco
DISCO_RAIZ: ${DISCO_RAIZ}
DISCO_DIRETORIO_FOTOS: ${DISCO_DIRETORIO_FOTOS}
# Swagger
SPRINGDOC_SWAGGER_UI_PATH: ${SPRINGDOC_SWAGGER_UI_PATH}
SPRINGDOC_SWAGGER_UI_OPERATIONSSORTER: ${SPRINGDOC_SWAGGER_UI_OPERATIONSSORTER}
volumes: volumes:
mysql_data: data:
networks:
aceite-net:
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment