Je viens d’installer RVM, Ruby, Rails, etc. sur mon ordinateur virtuel Ubuntu 12.04 32bit s’exécutant dans une boîte virtuelle. Je rencontre maintenant le problème suivant: pour mon premier projet Rails, bundle install
ou bundle update
prend très longtemps. Même lorsque je crée un nouveau projet avec Rails (qui inclut bundle install
).
Je n'utilise que les gemmes standards:
source 'https://rubygems.org'
gem 'Rails', '3.2.12'
# Bundle Edge Rails instead:
# gem 'Rails', :git => 'git://github.com/Rails/rails.git'
group :development do
gem 'sqlite3', '1.3.5'
end
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-Rails', '3.2.5'
gem 'coffee-Rails', '3.2.2'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platforms => :Ruby
gem 'uglifier', '1.2.3'
end
gem 'jquery-Rails', '2.0.2'
J'ai essayé l'installation groupée sans aucune gemme mais gem 'Rails', '3.2.12'
. Après cela, j'ai tapé à nouveau bundle install
avec toutes les pierres précieuses dans mon fichier gem. Il m'a fallu 10 minutes pour vérifier les dépendances. Le résultat de --verbose est un mélange de HTTP success
et HTTP redirection
.
Version de Rails: Rails 3.2.12
Version Ruby: Ruby 1.9.3p392 (2013-02-22 révision 39386)
Rvm: rvm 1.18.18
version de paquet: Bundler version 1.3.2
J'ai déjà cherché une solution, mais rien n'y fait.
Changer https
en http
dans mon Gemfile a fait la magie. Avant de devoir créer le projet avec Rails new APP --skip-bundle
Je tiens à avertir ici, qu'il existe un objectif de sécurité pour utiliser https sur http. Essayez d’abord les autres réponses mentionnées dans ce fil.
Bundler vient de avoir une mise à jour du traitement parallèle des gemmes
gem install bundler --pre
résoudra le problème de la meilleure façon possible pour le moment.
Bundler v1.12.x a été publié en 2016 et a provoqué chez certains utilisateurs des problèmes avec des problèmes de lenteur liés à l'installation d'un ensemble .
Dans ce cas, rester avec v1.11.2 est la meilleure option (c'est rapide) jusqu'à ce qu'un correctif soit publié.
Il vaut la peine de se rendre sur Rubygems.org pour essayer différentes versions de la gemme de bundler.
Vérifiez les versions de bundler existantes, désinstallez la version existante, installez la version 1.11.2 par exemple:
gem list | grep bundler
gem uninstall bundler -v existing-version-number
gem install bundler -v 1.11.2
Vous pouvez également utiliser plusieurs tâches, cela peut améliorer un peu
bundle install --jobs 8
Voici un tutorial about it
Une méthode conviviale pour les développeurs consiste à remplacer le serveur Gem par une alternative plus rapide.
Dans notre cas, nous pouvons configurer http
en tant que miroir pour traiter les connexions https
lentes:
bundle config mirror.https://rubygems.org http://rubygems.org
Cela vous permet de conserver la configuration Gemfile
d'origine tout en utilisant des connexions http
plus rapides pour récupérer des gemmes.
Si vous voulez revenir à https
:
bundle config --delete mirror.https://rubygems.org
bundle config
a une option par défaut --global
. Vous pouvez spécifier --local
pour limiter les configurations au dossier de l'application locale.
La configuration est enregistrée dans le ~/.bundle/config
global et le .bundle/config
local.
Si vous rencontrez toujours ce problème avec Bundler 1.12.5, vous pouvez essayer de mettre à jour le OpenSSL utilisé par votre Ruby .
Pour moi, ça s'est passé comme ça:
pmorse$ bundle --version
Bundler version 1.12.5
pmorse$ Ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION'
OpenSSL 1.0.1j 15 Oct 2014
pmorse$ openssl version
OpenSSL 0.9.8zg 14 July 2015
pmorse$ brew info openssl
openssl: stable 1.0.2h (bottled) [keg-only]
[... plus brew
sortie ...]
pmorse$ rvm reinstall Ruby-2.2.2 --with-openssl-dir=`brew --prefix openssl`
[... beaucoup de sortie rvm
...]
pmorse$ Ruby -ropenssl -e 'puts OpenSSL::OPENSSL_VERSION'
OpenSSL 1.0.2h 3 May 2016
Cela devrait rendre bundle
encore plus rapide sans que vous deviez passer de https
à http
.
Je sais que cette réponse est peut-être élémentaire, mais essayez d'installer des outils de développement à partir du site principal de Ruby. J'ai eu un problème similaire et cela a fonctionné. Parfois, les solutions simples sont les meilleures!
Bonne chance!