c# - studio - nuget proxy vsts
NuGet Behind Proxy (12)
Me doy cuenta de que NuGet permite la configuración de configuración de proxy desde la versión 1.4. Pero, no puedo encontrar ningún ejemplo de línea de comando.
Estoy intentando ejecutar algunos build y NuGet no se puede conectar.
¿Cómo configurar las configuraciones del proxy en la línea de comando?
Además de las sugerencias de @arcain, tuve que agregar la siguiente URL de red de entrega de contenido de Windows Azure a la lista blanca de nuestro servidor proxy:
.msecnd.net
En caso de que esté utilizando la versión https de nuget ( https://www.nuget.org ), tenga en cuenta que debe establecer los valores con https.
- https_proxy
- https_proxy.user
- https_proxy.password
Esto es lo que hice para que esto funcione con mi proxy corporativo que usa autenticación NTLM. Descargué NuGet.exe y luego ejecuté los siguientes comandos (que encontré en los comentarios a esta discusión en CodePlex):
nuget.exe config -set http_proxy=http://my.proxy.address:port
nuget.exe config -set http_proxy.user=mydomain/myUserName
nuget.exe config -set http_proxy.password=mySuperSecretPassword
Esto pone lo siguiente en mi NuGet.config
ubicado en %appdata%/NuGet
(que se asigna a C: / Users / myUserName / AppData / Roaming en mi máquina con Windows 7):
<configuration>
<!-- stuff -->
<config>
<add key="http_proxy" value="http://my.proxy.address:port" />
<add key="http_proxy.user" value="mydomain/myUserName" />
<add key="http_proxy.password" value="base64encodedHopefullyEncryptedPassword" />
</config>
<!-- stuff -->
</configuration>
Dicho sea de paso, esto también solucionó mi problema con NuGet que solo funcionaba la primera vez que accedía al origen del paquete en Visual Studio.
Tenga en cuenta que algunas personas que han probado este enfoque han informado a través de los comentarios que han podido omitir la configuración de la clave
http_proxy.password
desde la línea de comandos, o eliminarla después del hecho desde el archivo de configuración, y todavía podían tener la función NuGet en todo el proxy.
Sin embargo, si encuentra que debe especificar su contraseña en el archivo de configuración de NuGet, recuerde que debe actualizar la contraseña almacenada en la configuración de NuGet desde la línea de comando cuando cambie el inicio de sesión de la red, si sus credenciales de proxy también son su red credenciales .
La Solución de arriba de @arcain Plus debajo de los pasos me resolvió el problema
La modificación de las "fuentes del paquete" en la configuración del administrador del paquete Nuget para marcar la casilla de verificación para usar la configuración nuget.org resolvió mi problema.
También cambié para usar eso (nuget.org) como la primera opción de fuente de paquete
Desactivé las fuentes de mi paquete de compañía para asegurarme de que el nuget siempre fuera recogido de fuentes globales.
La solución para mí fue incluir
<add key="http_proxy" value="http://<IP>:<Port>" />
<add key="http_proxy.user" value="<user>" />
<add key="http_proxy.password" value="<password>" />
En el archivo nuget.config
.
Otro sabor para el mismo "proxy para nuget": alternativamente puede establecer su configuración de proxing nuget para conectarse a través del fiddler . Debajo de cmd se guardará la configuración del proxy en el archivo de configuración nuget predeterminado para el usuario en% APPDATA% / NuGet / NuGet.Config
configuración de nuget -Set HTTP_PROXY = http://127.0.0.1:8888
Siempre que necesites nuget para conectarte a Internet, simplemente abre Fiddler, asumiendo que tienes un fiddler escuchando en el puerto predeterminado 8888.
Esta configuración no es sensible a los cambios de passwork porque fiddler resolverá cualquier autenticación con el proxy de subida para usted.
Para cualquier persona que use VS2015: me encontré con un error de "407 autenticación proxy requerida", que rompió mi compilación. Después de unas horas investigando, resulta que MSBuild no enviaba credenciales cuando intentaba descargar Nuget como parte del objetivo ''DownloadNuGet''. La solución fue agregar el siguiente XML a C: / Archivos de programa (x86) / MSBuild / 14.0 / Bin / MSBuild.exe.config dentro del elemento <configuration>
:
<system.net>
<defaultProxy useDefaultCredentials="true">
</defaultProxy>
</system.net>
Podría estar equivocado, pero pensé que usaba la configuración de proxy de IE.
Si ve que necesita iniciar sesión, abre un cuadro de diálogo y le pide que lo haga (inicie sesión).
Por favor, mira la descripción de esto aquí -> http://docs.nuget.org/docs/release-notes/nuget-1.5
Prueba this Básicamente, la conexión podría fallar si su sistema no confía en el certificado nuget.
Quizás esto ayuda a alguien más. Para mí, la solución fue abrir la configuración de NuGet en Visual Studio (2015/2017) y agregar una nueva URL de fuente: http://www.nuget.org/api/v2/ .
No tuve que cambiar ninguna configuración relacionada con el proxy.
Solo una pequeña adición ...
Si funciona para que usted solo proporcione la configuración http_proxy y no el nombre de usuario y la contraseña, le recomiendo que coloque las configuraciones del proxy en un archivo nuget.config local del proyecto y lo confíe al control de fuente. De esta forma, todos los miembros del equipo obtienen la misma configuración.
Crea un vacío. / Nuget.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
</configuration>
Entonces:
nuget config -Set http_proxy="http://myproxy.example.com:8080" -ConfigFile ./Nuget.Config
Y finalmente confirme su nuevo proyecto local Nuget.config file.
Tal vez podrías probar esto con tu devenv.exe.config
<system.net>
<defaultProxy useDefaultCredentials="true" enabled="true">
<proxy proxyaddress="http://proxyaddress" />
</defaultProxy>
<settings>
<servicePointManager expect100Continue="false" />
<ipv6 enabled="true"/>
</settings>
</system.net>
Lo encontré en el rastreador NuGet Issue
También hay otros comentarios valiosos sobre los problemas de red de NuGet +.