Files
TitularesApp/backend/src/Titulares.Api/Dockerfile
2025-10-30 11:58:24 -03:00

26 lines
800 B
Docker

# Etapa 1: Compilación
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
WORKDIR /src
# 1. Copia solo el archivo .csproj.
# La ruta de origen es "Titulares.Api.csproj" porque está en la raíz del contexto.
COPY Titulares.Api.csproj .
# 2. Restaura las dependencias. Docker guardará esta capa en caché.
RUN dotnet restore "Titulares.Api.csproj"
# 3. Copia el resto de los archivos del proyecto.
COPY . .
# 4. Publica la aplicación.
# --no-restore se usa porque ya hemos restaurado las dependencias.
RUN dotnet publish "Titulares.Api.csproj" -c Release -o /app/publish --no-restore
# Etapa 2: Imagen Final
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS final
WORKDIR /app
COPY --from=build /app/publish .
EXPOSE 8080
ENV ASPNETCORE_ENVIRONMENT=Production
ENTRYPOINT ["dotnet", "Titulares.Api.dll"]