【发布时间】:2020-07-11 11:37:35
【问题描述】:
有没有人有使用 Windows 容器在 Azure 中使用 .NET Core 3.1 开发微服务的经验?我遇到了一个问题 我正在尝试从私有 Nuget 提要中读取我的 Dockerfile。这是我的 Dockerfile:
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-nanoserver-1809 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-nanoserver-1809 AS build
WORKDIR /src
COPY ./Nuget.config ./
COPY ["MyService/MyService.csproj", "MyService/"]
ENV NUGET_CREDENTIALPROVIDER_SESSIONTOKENCACHE_ENABLED true
ENV DOTNET_SYSTEM_NET_HTTP_USESOCKETSHTTPHANDLER=0
ENV VSS_NUGET_EXTERNAL_FEED_ENDPOINTS "{\"endpointCredentials\": [{\"endpoint\":\"my_private_feed", \"password\":\"my_personal_access_token\"}]}"
RUN dotnet restore "MyService/MyService.csproj"
COPY . .
WORKDIR "/src/MyService"
RUN dotnet build "MyService.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "MyService.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "MyService.dll"]
这个 dockerfile 给了我一个 401 Unauthenticated 错误,即使我知道我提供的凭据是正确的。 我也尝试在我的 nuget.config 文件中设置用户和密码,这似乎有效,但我不想拥有 每次令牌过期时进行代码更改以更新密码。 关于如何从这里继续前进的任何建议?我只是没有正确格式化 VSS_NUGET_EXTERNAL_FEED_ENDPOINTS 变量的设置吗?
【问题讨论】:
标签: azure docker .net-core azure-devops nuget