You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
#See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" >/etc/timezone
USER app
WORKDIR /app
EXPOSE 8080
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
ARG BUILD_CONFIGURATION = Release
WORKDIR /src
COPY [ "Hadoop/ZKLT.Hadoop.API/ZKLT.Hadoop.API.csproj" , "Hadoop/ZKLT.Hadoop.API/" ]
COPY [ "Hadoop/ZKLT.Hadoop/ZKLT.Hadoop.csproj" , "Hadoop/ZKLT.Hadoop/" ]
COPY [ "Hadoop/ZKLT.Hadoop.Interface/ZKLT.Hadoop.Interface.csproj" , "Hadoop/ZKLT.Hadoop.Interface/" ]
COPY [ "Hadoop/ZKLT.Hadoop.Model/ZKLT.Hadoop.Model.csproj" , "Hadoop/ZKLT.Hadoop.Model/" ]
RUN dotnet restore "./Hadoop/ZKLT.Hadoop.API/./ZKLT.Hadoop.API.csproj"
COPY . .
WORKDIR "/src/Hadoop/ZKLT.Hadoop.API"
RUN dotnet build "./ZKLT.Hadoop.API.csproj" -c $BUILD_CONFIGURATION -o /app/build
FROM build AS publish
ARG BUILD_CONFIGURATION = Release
RUN dotnet publish "./ZKLT.Hadoop.API.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost= false
FROM base AS final
WORKDIR /app
COPY --from= publish /app/publish .
ENTRYPOINT [ "dotnet" , "ZKLT.Hadoop.API.dll" ]