FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base WORKDIR /app RUN apt-get update && apt-get install -y ca-certificates && update-ca-certificates RUN apt-get install -y curl && rm -rf /var/lib/apt/lists/* FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src # Install and update CA certificates FIRST before any network operations RUN apt-get update && \ apt-get install -y --no-install-recommends ca-certificates && \ update-ca-certificates && \ rm -rf /var/lib/apt/lists/* COPY . . # Create global NuGet.Config with package source mapping RUN mkdir -p /root/.nuget/NuGet && \ echo '' > /root/.nuget/NuGet/NuGet.Config && \ echo '' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo ' ' >> /root/.nuget/NuGet/NuGet.Config && \ echo '' >> /root/.nuget/NuGet/NuGet.Config # Restore with verbose logging RUN dotnet restore "src/Nocr.Users.Host/Nocr.Users.Host.csproj" --verbosity normal WORKDIR "/src/src/Nocr.Users.Host" RUN dotnet build "Nocr.Users.Host.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "Nocr.Users.Host.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "Nocr.Users.Host.dll"]