diff --git a/src/InterfaceForward.Api/Dockerfile b/src/InterfaceForward.Api/Dockerfile index dc63325..614eefc 100644 --- a/src/InterfaceForward.Api/Dockerfile +++ b/src/InterfaceForward.Api/Dockerfile @@ -1,12 +1,12 @@ -# 构建上下文 = 仓库根目录(含 NuGet.Config / Directory.Build.props / src/) -# Kaniko 默认: --build-arg=NUGET_IDESHIP=http://baget/v3/index.json +# [备用] CI 已改用: dotnet publish /t:PublishContainer(见 cicd/) +# 多阶段构建(在 build 节点用 Docker 执行,勿用 Kaniko 解大 SDK) +# CI: docker build --build-arg NUGET_IDESHIP=https://baget.ideship.com/v3/index.json ... FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src -ARG NUGET_IDESHIP=http://baget/v3/index.json +ARG NUGET_IDESHIP=https://baget.ideship.com/v3/index.json COPY ["NuGet.Config", "Directory.Build.props", "./"] -# 集群内构建走 Service;本机构建可 --build-arg=NUGET_IDESHIP=https://baget.ideship.com/v3/index.json RUN sed -i \ -e "s|https://baget.ideship.com/v3/index.json|${NUGET_IDESHIP}|g" \ -e "s|http://baget.ideship.com/v3/index.json|${NUGET_IDESHIP}|g" \ @@ -18,19 +18,14 @@ COPY ["src/InterfaceForward.Application.Contracts/InterfaceForward.Application.C COPY ["src/InterfaceForward.Repositories/InterfaceForward.Repositories.csproj", "src/InterfaceForward.Repositories/"] COPY ["src/InterfaceForward.Application/InterfaceForward.Application.csproj", "src/InterfaceForward.Application/"] COPY ["src/InterfaceForward.Api/InterfaceForward.Api.csproj", "src/InterfaceForward.Api/"] - RUN dotnet restore "src/InterfaceForward.Api/InterfaceForward.Api.csproj" COPY . . WORKDIR /src/src/InterfaceForward.Api ARG BUILD_CONFIGURATION=Release -RUN dotnet build "InterfaceForward.Api.csproj" -c $BUILD_CONFIGURATION -o /app/build --no-restore - -FROM build AS publish -ARG BUILD_CONFIGURATION=Release RUN dotnet publish "InterfaceForward.Api.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false --no-restore FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS runtime WORKDIR /app -COPY --from=publish /app/publish . +COPY --from=build /app/publish . ENTRYPOINT ["dotnet", "InterfaceForward.Api.dll"] diff --git a/src/InterfaceForward.Api/InterfaceForward.Api.csproj b/src/InterfaceForward.Api/InterfaceForward.Api.csproj index 3e6205e..10c5ac3 100644 --- a/src/InterfaceForward.Api/InterfaceForward.Api.csproj +++ b/src/InterfaceForward.Api/InterfaceForward.Api.csproj @@ -5,8 +5,16 @@ net8.0 Linux + + true + mcr.microsoft.com/dotnet/aspnet:8.0 + /app + + + +