Dockerfile 1.3 KB

123456789101112131415161718192021222324252627282930
  1. # 디버그 컨테이너를 사용자 지정하는 방법과 Visual Studio 이 Dockerfile을 사용하여 더 빠른 디버깅을 위해 이미지를 빌드하는 방법을 알아보려면 https://aka.ms/customizecontainer를 참조하세요.
  2. # 이 스테이지는 VS에서 빠른 모드로 실행할 때 사용됩니다(디버그 구성의 기본값).
  3. FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
  4. USER $APP_UID
  5. WORKDIR /app
  6. EXPOSE 8080
  7. EXPOSE 8081
  8. # 이 스테이지는 서비스 프로젝트를 빌드하는 데 사용됩니다.
  9. FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
  10. ARG BUILD_CONFIGURATION=Release
  11. WORKDIR /src
  12. COPY ["goods.csproj", "."]
  13. RUN dotnet restore "./goods.csproj"
  14. COPY . .
  15. WORKDIR "/src/."
  16. RUN dotnet build "./goods.csproj" -c $BUILD_CONFIGURATION -o /app/build
  17. # 이 스테이지는 최종 스테이지에 복사할 서비스 프로젝트를 게시하는 데 사용됩니다.
  18. FROM build AS publish
  19. ARG BUILD_CONFIGURATION=Release
  20. RUN dotnet publish "./goods.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
  21. # 이 스테이지는 프로덕션에서 사용되거나 VS에서 일반 모드로 실행할 때 사용됩니다(디버그 구성을 사용하지 않는 경우 기본값).
  22. FROM base AS final
  23. WORKDIR /app
  24. COPY --from=publish /app/publish .
  25. ENTRYPOINT ["dotnet", "goods.dll"]