web-dev-qa-db-fra.com

Erreur 'tunneling socket' lors de l'exécution de l'installation de npm

Je reçois le message d'erreur ci-dessous lors de la tentative d'exécution de la commande 'npm install'. 

Erreur: la prise de tunnel n'a pas pu être établie, cause = connect ECONNREFUSED 10.232.207.137:8080

Qu'est-ce qui me manque?

screenshot

34
Kannan

Si vous êtes derrière un proxy, définissez-le correctement dans npm.

>npm config set proxy http://proxyhost:proxyport
>npm config set https-proxy http://proxyhost:proxyport

Remarques:

  1. Pour les proxies SSL/https, le protocole dans l'URL doit être http not https

  2. Si votre configuration est sur une instance Docker/Vagrant ou sur une machine virtuelle hébergée, utilisez l'adresse IP au lieu du nom d'hôte pour le proxy, car cette dernière pourrait ne pas être résolue.

  3. S'il n'y a pas de proxy, supprimez la configuration de proxy de npm

    >npm config set proxy null
    >npm config set https-proxy null
    
69
Roshith

selon this ce sont des questions de proxy, essayez de désactiver ssl et réglez le registre sur http au lieu de https. J'espère que ça aide!

npm config set registry=http://registry.npmjs.org/
npm config set strict-ssl false
12
vrachlin

Les commandes suivantes peuvent résoudre votre problème:

npm config set proxy false
npm cache clean

Cela a résolu le même problème.

8
IamMHussain

Je sais que c'est beaucoup trop tard, mais si quelqu'un a un problème similaire à l'avenir et que vous êtes sûr d'avoir no proxy set mais que vous avez une variable d'environnement appelée http_proxy . Supprimez-le et réessayez. J'avais mis un proxy pour Fiddler.

7
IsaacK

Dans mon cas, aidé supprimer le fichier de configuration .npmrc

rm ~/.npmrc
5
Ondřej Machala

La suppression des paramètres de proxy a résolu le problème:  

Si vous n'utilisez aucun proxy:

npm config rm proxy
npm config rm https-proxy

Si vous utilisez un proxy:

npm config set proxy http://proxyhostname:proxyport
npm config set https-proxy http://proxyhostname:proxyport

Espérons que cela résoudra votre problème :)

5
Vishnu Mishra

Si vous utilisez ubuntu trusty 14.0, recherchez Réseau, sélectionnez Proxy réseau et désactivez-le. Le proxy peut encore être défini dans les variables d'environnement du système. vérifier

env|grep -i proxy

vous pouvez obtenir une sortie en tant que

http_proxy=http://192.168.X.X:8080/
ftp_proxy=ftp://192.168.X.X:8080/
socks_proxy=socks://192.168.X.X:8080/
https_proxy=https://192.168.X.X:8080/

désactive ces variables d'environnement en tant que:

unset(http_proxy)

et de cette façon désarmé tout. Exécutez maintenant npm install en vous assurant que l'utilisateur doit avoir l'autorisation de créer le dossier node_modules où vous installez le module.

3
YATIN GUPTA

n'oubliez pas de définir votre nom d'utilisateur et votre mot de passe si nécessaire:

http: // USERNAME: [email protected]: 8080

Exemple:

npm config set proxy http://USERNAME:[email protected]:8080
3
dan

Un point important à retenir est que si vous êtes derrière un pare-feu d'entreprise et que vous obtenez les paramètres de proxy d'entreprise à partir d'un fichier .pac, veillez à utiliser la valeur de global proxy. 

1
StackticMain

J'ai perdu une journée en essayant de faire ce travail. Travaillé avec ces étapes.

J'ai ouvert Fiddler et vérifié l'option Règles> Autentifier automatiquement.

Ensuite, recherchez le fichier .npmrc, généralement dans c:\users\et l’utilisez comme configuration:

registry=https://registry.npmjs.org/
proxy=http://username:[email protected]:8888
https-proxy=http://username:[email protected]:8888
http-proxy=http://username:[email protected]:8888
strict-ssl=false
ca=null

J'espère aider quelqu'un!

1
Rafael Souza

J'ai également rencontré le même problème et utilisais CNTLM pour la configuration du proxy. Dans mon cas, HTTP_PROXY et HTTPS_PROXY prennent la priorité sur http_proxy et https_proxy donc soyez conscient de la modification de toutes les variables de proxy.

env|grep -i proxy

et assurez-vous que toutes les variables de proxy ci-dessous doivent pointer vers le même proxy.

HTTP-PROXY = "http://localhost:3128"
HTTPS-PROXY = "https://localhost:3128"
HTTPS_PROXY = "http://localhost:3128"
HTTP_PROXY = "http://localhost:3128"
PROXY = "http://localhost:3128"
http-proxy = "http://localhost:3128"
http_proxy = "http://localhost:3128"
https-proxy = "https://localhost:3128/"
https_proxy = "https://localhost:3128"
proxy = "http://localhost:3128/"

Je sais que certaines variables ne sont pas nécessaires, mais je ne suis pas sûr de savoir qui utilise quoi.

1
Gangadhar Jannu

J'ai passé des jours à essayer toutes les réponses ci-dessus et à vérifier que le proxy et les autres paramètres de ma configuration de nœud étaient corrects. Tous l'étaient et cela échouait toujours. J'utilisais/utilise une machine Windows 10 et derrière un proxy de corp.

Pour des raisons héritées du passé, HTTP_PROXY et HTTPS_PROXY étaient définis dans mes variables d'environnement utilisateur qui remplaçaient celles du nœud (inconnues de moi), donc leur correction (le HTTPS_PROXY étant défini sur https, j'ai donc adopté HTTP) a résolu le problème .

C'est le problème lorsque nous pouvons avoir les mêmes variables à plusieurs endroits, vous ne savez pas quelle est utilisée!

0
Status420

J'ai été confronté à un problème similaire et aucune des solutions ci-dessus ne fonctionnait comme j'étais en réseau protégé.

Pour remédier à cela, j'ai installé l'outil "Fiddler" de Telerik. Après l'installation, démarrez Fiddler et relancez l'installation de Protractor.

J'espère que cela résoudra votre problème.

Merci.

0
Kalyan Hurkat

Après avoir examiné toutes les réponses, celle qui m'a aidé a été de fournir des valeurs de proxy en ligne avec la commande install. L'une de mes frustrations a été d'ajouter le domaine à mon nom d'utilisateur. C'est pas nécessaire. J'ai utilisé l'exemple suivant pour installer une version spécifique de Angular:

npm install -g @angular/[email protected] --proxy "http://username:password@proxy_server:proxy_port" --registry http://registry.npmjs.org
0
Mike

Si vous utilisez gnome et avez désactivé le proxy au niveau du réseau, vous devez également vous assurer que le proxy n'est pas activé sur votre terminal.

➜ gconftool-2 -a /system/http_proxy  
 Host = http://localhost/
 port = 2000
 use_http_proxy = false
 use_authentication = false
 authentication_password = 
 authentication_user = 
 ignore_hosts = [localhost,127.0.0.0/8]

Vous pouvez le déposer avec

gconftool-2 -t string -s /system/http_proxy/Host ""
gconftool-2 -u /system/http_proxy/port
gconftool-2 -u /system/http_proxy/Host
unset http_proxy
0
DmitrySemenov

À côté de ce qui a décrit @Roshith dans son répondez ici :

Si vous êtes derrière un proxy, définissez-le correctement dans npm.

npm config set proxy http://proxyhost:proxyport
npm config set https-proxy http://proxyhost:proxyport

Je devais également changer le fichier ~.bashrc qui contenait également un paramètre de proxy porté dans mon cas. J'ai changé ces paramètres ici:

export HTTP_PROXY="http://proxyhost:proxyport"
export HTTPS_PROXY="http://proxyhost:proxyport"

Utilisez la commande suivante pour vérifier les paramètres du proxy:

env | grep -i proxy
0
Bruno Bieri