Comment bundler derrière un proxy?

j'obtiens 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 correctement réglé et j'ai ajouté gem: --http-proxy=mon proxy ~/.gemrc. Ces réglages sont ce qui permet à mes commandes gem de fonctionner, et j'espérais qu'elles se traduiraient en bundler, mais pas de chance.

pensant que sudo n'héritera peut-être pas de tout mon environnement, j'ai aussi ajouté ces paramètres pour mon utilisateur root, mais nada.

à ce point bundler m'empêche de déployer mon application, et je peux trouver très peu d'autres en cours d'exécution dans ce. Si personne n'a de réponse, je serai forcé de retirer bundler de mon application Rails (ce qui ne me dérangerait pas de le faire...)

49
demandé sur Willmore 2010-10-07 01:30:25

11 réponses

j'utilise Mac OS et je mets juste http_proxy dans bash

export http_proxy=http://user:password@host:port

et ça marche très bien. Avez-vous utilisé sudo ? Si vous le faites, par défaut sudo ne préserve pas le mandataire http.

voir ici pour corriger:

https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-sudo-one /

66
répondu ahmy 2013-12-10 23:46:21

j'ai compris que le réglage de HTTP_PROXY (en plus de http_proxy) faisait une différence positive, c'est-à-dire que ça marchait pour moi. Donc, en supposant que vous avez configuré la variable d'environnement http_proxy correcte, essayez (si vous utilisez bash)

export HTTP_PROXY=$http_proxy

et ensuite aussi utiliser l'option -E à sudo( pour préserver les variables d'environnement), donc

sudo -E bundle install

Jarl

15
répondu Jarl 2011-08-18 07:11:42

pour obtenir bundler derrière un proxy sur win XP / 7, je devais faire ce qui suit:

j'ai ajouté http_proxy aux Variables D'environnement

  • Mon Ordinateur
  • paramètres système Avancés
  • Onglet Avancé De L'Environnement
  • Variables
  • Nouveau
  • nom de la Variable = http_proxy
  • valeur Variable = MY_PROXY
  • Cliquez Sur Ok

changez MY_PROXY en quelque chose qui vous appartient.

ça a marché pour bundler. Le. le paramètre proxy de la gemrc n'a fonctionné que pour les gemmes.

merci Jamie

5
répondu Jamie.Good 2012-09-28 12:54:00

Vous pouvez télécharger les gemmes localement avec gem install puis bundle install. Pas exactement soigné, je sais, mais il fonctionne.

3
répondu matttyg 2010-10-21 11:14:42

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
3
répondu coorasse 2012-09-03 09:12:41

probablement plus flexible et plus sûr fichier d'utilisation de lot:

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
2
répondu vladimir77 2015-08-25 11:34:55

Windows OS, exécuter la commande suivante avant d'exécuter bundle install

SET http_proxy=http://user:password@host:port
1
répondu Jerry Zhang 2015-06-14 07:14:41

assurez-vous que votre OS par défaut http_proxy est déjà configuré. Si vous utilisez Linux, essayez la commande suivante pour savoir à quel proxy vous pointez.

echo $http_proxy

dans mon OS Ubuntu, j'ai placé ma variable d'environnement http_proxy sur mon serveur mandataire dans ~/.bashrc

0
répondu rasyadi 2010-10-15 04:57:41
$ export http_proxy="http://username:password@host:port"
$ export ftp_proxy="http://username:password@host:port"
$ sudo visudo

Ajouter cette ligne dans le fichier:

Defaults env_keep = "http_proxy ftp_proxy"

au-dessus de cette ligne:

Defaults        env_reset

alors exécutez votre commande comme sudo cela fonctionnera.

réf: https://memset.wordpress.com/2010/10/14/bash-http_proxy-from-a-user-environment-to-sudo-one /

0
répondu Pradeep Bihani 2015-08-26 13:26:40

je dirige Ubuntu. La variable $http_proxy est définie, mais elle ne fonctionne pas avec quelques éléments. Un de ces objets étant gem.

si vous mettez ce qui suit dans votre ~/.gemrc il va travailler.

http_proxy: proxy-adresse:port

remplacez le port proxy-url: par votre adresse proxy et votre port. Après avoir ajouté ça, j'ai lancé "bundle install" et tout s'est déroulé comme prévu.

0
répondu grayman 2016-09-14 20:44:14

Pour avoir la commande bundle install travailler avec proxy sur windows, procédez de la manière suivante:

  1. Modifier le fichier .gemrc . Ouvrez la ligne de commande de windows et tapez: notepad %userprofile%\.gemrc .
  2. le dossier .gemrc est ouvert dans le bloc-notes. Tapez sur une nouvelle ligne http_proxy: http://username:passwordEncodedWithUrlencode@proxyaddress:proxyport . Le mot de passe doit être encodé avec urlencode .
  3. fermez le fichier .gemrc avec le sauver.
0
répondu Willmore 2017-11-08 13:55:24