daily_digest/Dockerfile

27 lines
1011 B
Docker
Raw Normal View History

2025-04-12 00:32:17 +07:00
# --- Стадия сборки ---
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /source
2025-04-12 00:51:39 +07:00
# Копируем .sln и .csproj файл (он теперь в корне)
2025-04-12 00:32:17 +07:00
COPY *.sln .
2025-04-12 00:51:39 +07:00
COPY *.csproj .
# Если будут другие проекты, их .csproj тоже копируем из корня
2025-04-12 00:32:17 +07:00
2025-04-12 00:51:39 +07:00
# Восстанавливаем NuGet пакеты для .csproj файла
RUN dotnet restore "./DailyDigestWorker.csproj" # Используем имя файла проекта
2025-04-12 00:32:17 +07:00
2025-04-12 00:51:39 +07:00
# Копируем весь остальной исходный код из корня
2025-04-12 00:32:17 +07:00
COPY . .
2025-04-12 00:51:39 +07:00
# Публикуем приложение
# WORKDIR уже /source, где лежит .csproj
2025-04-12 00:32:17 +07:00
RUN dotnet publish "./DailyDigestWorker.csproj" -c Release -o /app/publish --no-restore
# --- Финальная стадия ---
2025-04-12 00:55:43 +07:00
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS final
2025-04-12 00:32:17 +07:00
WORKDIR /app
COPY --from=build /app/publish .
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
ENTRYPOINT ["dotnet", "DailyDigestWorker.dll"]