【问题标题】:Setting dotnetcli no_proxy设置 dotnetcli no_proxy
【发布时间】:2021-12-06 18:20:11
【问题描述】:

我正在拔头发。我有 Azure DevOps 的 On Prem 安装和一对构建代理。我们正在尝试迁移到 .net 核心,但我们一直无法将 nuget 包推送到 DevOps 提要中。这应该是直截了当的。

整个环境隐藏在公司防火墙和代理之后,虽然代理配置有利于 nuget pull 以及您想命名的任何其他活动,但我们无法将 nuget push(或 dotnet push)调用到我们的内部包存储库。我得到的唯一错误是来自 tunnel.js 的 502(错误网关),但我已经在 NO_PROXY 中明确设置了 DevOps 服务器的地址(环境变量、devops 代理的 .proxy 和 .proxybypass、netsh winhttp 代理、构建代理用户 Internet 连接设置和 %AppData%\Nuget\Nuget.Config 文件)。 Git 工作、nuget 恢复工作、构建工作、打包工作,但 dotnet push(或 nuget push)失败并出现此错误。

谁能建议我可能需要设置代理绕过或 no_proxy 设置的任何其他地方?

【问题讨论】:

    标签: .net-core azure-devops nuget azure-pipelines


    【解决方案1】:

    您遇到此问题的原因可能有很多,这可能与您的组织网络、用户角色和权限甚至任务可能受到任何策略的限制有关。

    但如果上述情况在您的情况下不正确,那么您应该配置 NuGet 工具以使用 Azure Artifacts 和其他 NuGet 存储库进行身份验证。如果您使用的所有 Azure Artifacts 源与您的管道位于同一组织中,则可以使用 NuGetAuthenticate 任务 而不指定任何输入。查看此Restore and push NuGet packages within your organization 文档了解更多信息。

    在使用 NuGet 工具将包还原或推送到经过身份验证的包源(例如 Azure Artifacts)之前,必须运行此任务。此任务将 Azure Artifacts Credential Provider 安装到 NuGet 插件目录(如果尚未安装)。

    如果您的代理位于 Web 代理之后,NuGetAuthenticate 将不会设置 nuget.exe、dotnet 和 MSBuild 以使用代理。然后将环境变量http_proxy 和可选的no_proxy 设置为您的代理设置,如下所示。

    nuget.exe config -set http_proxy=http://my.proxy.address:port
    nuget.exe config -set http_proxy.user=mydomain\myUserName
    

    查看此NuGet CLI environment 变量了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-16
      • 1970-01-01
      • 2020-03-29
      • 2021-04-13
      • 1970-01-01
      • 1970-01-01
      • 2020-12-15
      • 1970-01-01
      相关资源
      最近更新 更多