Cambios en Dockerfile y docker-compose

main
Elmer Yujra Condori 5 days ago
parent a0cb4ae2ee
commit a61fbdac88

@ -1,9 +1,24 @@
# ─── ETAPA 1: BUILD ───────────────────────────────────────────────────────────
FROM maven:3-eclipse-temurin-25 AS builder
WORKDIR /app
# Copia el pom primero para aprovechar cache de dependencias
COPY pom.xml .
RUN mvn dependency:go-offline -q
# Copia el código fuente y compila (sin tests)
COPY src ./src
RUN mvn package -DskipTests -q
# ─── ETAPA 2: RUNTIME ─────────────────────────────────────────────────────────
FROM eclipse-temurin:25-jdk FROM eclipse-temurin:25-jdk
WORKDIR /app WORKDIR /app
COPY target/*.jar app.jar # Solo copia el .jar generado — Maven y el código fuente NO están aquí
COPY --from=builder /app/target/*.jar app.jar
EXPOSE 8080 EXPOSE 8080
ENTRYPOINT ["java","-jar","/app/app.jar"] ENTRYPOINT ["java", "-jar", "app.jar"]

@ -9,6 +9,13 @@ services:
MYSQL_ALLOW_EMPTY_PASSWORD: ${MYSQL_ALLOW_EMPTY_PASSWORD} MYSQL_ALLOW_EMPTY_PASSWORD: ${MYSQL_ALLOW_EMPTY_PASSWORD}
ports: ports:
- "3306:3306" - "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 10s
timeout: 5s
retries: 5
restart: unless-stopped restart: unless-stopped
backend: backend:
@ -17,7 +24,8 @@ services:
dockerfile: Dockerfile dockerfile: Dockerfile
container_name: spring_admision container_name: spring_admision
depends_on: depends_on:
- mysql mysql:
condition: service_healthy
ports: ports:
- "8080:8080" - "8080:8080"
environment: environment:
@ -25,3 +33,6 @@ services:
SPRING_DATASOURCE_USERNAME: root SPRING_DATASOURCE_USERNAME: root
SPRING_DATASOURCE_PASSWORD: "" SPRING_DATASOURCE_PASSWORD: ""
restart: unless-stopped restart: unless-stopped
volumes:
mysql_data:

Loading…
Cancel
Save