#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base WORKDIR /app EXPOSE 80 EXPOSE 443 #设置时间为中国上海 ENV TZ=Asia/Shanghai ENV DEBIAN_FRONTEND noninteractive # 设置包源为阿里 RUN sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list \ && apt-get clean # 安装 tzdata 软件包 RUN apt-get update \ && apt-get install -y tzdata \ && ln -fs /usr/share/zoneinfo/$TZ /etc/localtime \ && rm -rf /var/lib/apt/lists/ \ && dpkg-reconfigure -f noninteractive tzdata FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build WORKDIR /src COPY ["SA.WebApi/SA.WebApi.csproj", "SA.WebApi/"] COPY ["SA.Quartz/SA.Quartz.csproj", "SA.Quartz/"] COPY ["SA.Domain.XFYun/SA.Domain.XFYun.csproj", "SA.Domain.XFYun/"] COPY ["SA.Entity/SA.Entity.csproj", "SA.Entity/"] COPY ["SA.Core/SA.Core.csproj", "SA.Core/"] RUN dotnet restore "SA.WebApi/SA.WebApi.csproj" COPY . . WORKDIR "/src/SA.WebApi" RUN dotnet build "SA.WebApi.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "SA.WebApi.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "SA.WebApi.dll"]