Je reçois la sortie suivante de la commande Sudo bundle install :
Fetching source index for `http://rubygems.org/`
Could not reach rubygems repository `http://rubygems.org/`
Could not find gem 'rspec-Rails (>= 2.0.0.beta.22, runtime)' in any of the gem sources.
J'ai $ http_proxy défini correctement et j'ai ajouté gem: --http-proxy = mon proxy à ~/.gemrc. Ce sont ces paramètres qui permettent à mes commandes de gem de fonctionner, et j’espérais qu’elles seraient traduites en bundle, mais sans succès.
Pensant que Sudo n'hériterait peut-être pas de tout mon environnement, j'ai également ajouté ces paramètres à mon utilisateur root, mais nada.
À ce stade, le groupeur m'empêche de déployer mon application et je peux en trouver très peu d'autres qui rencontrent ce problème. Si personne n'a de réponse, je serai obligé d'extraire Bundler de mon application Rails (ce qui ne me dérangerait pas de le faire ...)
OSX et Linux
export http_proxy=http://user:password@Host:port
export HTTP_PROXY=$http_proxy
Si vous utilisez HTTPS, définissez-le également
export https_proxy=http://user:password@Host:port
export HTTPS_PROXY=$https_proxy
Si vous utilisez Sudo
, par défaut, Sudo
ne conserve pas la variable proxy http. Utilisez l'indicateur -E
pour le conserver
$ Sudo -E bundle install
pour que Sudo
préserve les variables d'environnement par défaut:
https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-Sudo-one/
Les fenêtres
Comme indiqué par les réponses ci-dessous, vous pouvez utiliser SET
à la place
SET HTTP_PROXY=http://user:password@Host:port
SET HTTPS_PROXY=%HTTP_PROXY%
J’ai compris que le réglage de HTTP_PROXY (en plus de http_proxy) faisait une différence positive, c’est-à-dire que cela fonctionnait pour moi. Donc, en supposant que vous ayez configuré la variable d’environnement http_proxy
correcte, essayez (si vous utilisez bash)
export HTTP_PROXY=$http_proxy
puis utilisez également l'option -E
pour Sudo (pour préserver les variables d'environnement),
Sudo -E bundle install
Jarl
pour obtenir un bundle derrière un proxy sous Win XP/7, je devais procéder comme suit:
J'ai ajouté http_proxy aux variables d'environnement
Changez MY_PROXY en votre faveur.
cela a fonctionné pour le paquet. Le paramètre de proxy .gemrc ne fonctionnait que pour les pierres précieuses.
merci Jamie
Si vous ne voulez pas définir une variable globale dans le système, vous pouvez éditer ~/.gemrc et l'écrire comme ça
---
:benchmark: false
:verbose: true
:sources:
- http://rubygems.org/
- http://gems.rubyforge.org
:backtrace: false
:bulk_threshold: 1000
:update_sources: true
gem: --http-proxy=http://USERNAME:PASSWORD@ADDRESS:PORT
Vous pouvez télécharger les gems requis localement avec l’installation gem puis l’installation groupée. Pas vraiment chouette, je sais, mais ça marche.
fichier batch d'utilisation probablement plus flexible et sécurisable:
SET /P login="Enter proxy login: "
SET /P password="Enter proxy password: "
SET HTTP_PROXY=http://%login%:%password%@proxy.com:8080
SET HTTPS_PROXY=%HTTP_PROXY%
CLS
bundle install
Système d'exploitation Windows, exécutez la commande suivante avant d'exécuter bundle install
SET http_proxy=http://user:password@Host:port
Assurez-vous que http_proxy par défaut de votre système d'exploitation est déjà configuré. Si vous utilisez Linux, essayez la commande suivante pour savoir sur quel proxy elle pointe.
echo $http_proxy
Dans mon système d'exploitation Ubuntu, j'ai défini la variable d'environnement http_proxy sur mon serveur proxy dans ~/.bashrc
Je suis sous Ubuntu. La variable $ http_proxy est définie, mais elle ne fonctionne pas avec quelques éléments. Un de ces articles étant une pierre précieuse.
Si vous mettez le texte suivant dans votre ~/.gemrc, cela fonctionnera.
http_proxy: proxy-url: port
Remplacez le proxy-url: port par votre adresse proxy et votre port. Après avoir ajouté cela, j’ai exécuté "l’installation groupée" et tout a fonctionné comme prévu.
$ export http_proxy="http://username:password@Host:port"
$ export ftp_proxy="http://username:password@Host:port"
$ Sudo visudo
Ajoutez cette ligne dans le fichier:
Defaults env_keep = "http_proxy ftp_proxy"
Au dessus de cette ligne:
Defaults env_reset
puis lancez votre commande en tant que Sudo cela fonctionnera.
ref: https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-Sudo-one/
Pour que la commande bundle install
fonctionne avec un proxy sur Windows, procédez comme suit:
.gemrc
. Ouvrez la ligne de commande Windows et tapez: notepad %userprofile%\.gemrc
.http_proxy:
http://username:passwordEncodedWithUrlencode@proxyaddress:proxyport
. Le mot de passe doit être encodé avec urlencode.