RVM'yi seviyorum. Bunun için ana kullanım durumunun farklı kullanıcıların Ruby'nin farklı sürümleri arasında geçiş yapmasına izin verdiğinin farkındayım. Ama diyelim ki bir Rails uygulamasını sunucuya dağıtıyorum ve sadece Ruby'nin tek bir versiyonunu istiyorum. Özellikle, RVM ile yüklemek için bir esinti olan 1.9.2, ancak onsuz bir acı istiyorum. "Ben tüm kullanıcılar için kanonik Ruby kurulumunu yapmak istiyorum" diyebileceğim bir yol var mı? (Tüm mücevherleri ile birlikte), el ile bir sürü symlinks yaratmak zorunda kalmadan ve daha yeni bir güncelleme yaptığımda değiştiriyorum Ruby serbest mi?Tüm kullanıcılar için Ruby'nin tek bir sürümünü korumak için RVM'yi kullanabilir miyim?
cevap
RVM'yi root olarak kurun ve sudo rvm use 1.9.2 --default
'u yapın. /usr/local/rvm/scripts/rvm
kaynağı olan herhangi bir kullanıcı varsayılan olarak 1.9.2 değerine sahip olacaktır.
ama:
Ben küresel RVM yükleme ile birkaç sorunlarla karşılaştı ve dağıtım için ve tüm Yakut/Raylar işlemleri için bir kullanıcı hesabı kullanarak başvurdu - Kullanıcıların hesap tüm dev ve üretim sunucularında bulunur ve .rvm dizini bir dev sunucusundan diğer tüm sunuculara rsync'ed.
Uygulama sunucularınızda kaç farklı kullanıcının Ruby 1.9.2'ye gerçekten erişmesi gerekiyor? Sadece bunu tek bir kullanıcıya indiremez misiniz? Bu benim için en iyi çalıştı.
Not: muhtemelen kaçınmak istiyorum
Bir şey elle uygulama sunucusuna (ler) RVM yüklemek ve daha sonra uygulama sunucusundaki Ruby ve Taşlar yüklemektir ... Eğer araçlarını tutmak istemiyoruz Güvenlik nedenleriyle üretim sunucularınızda cc gibi bir yer var! rsync'ing .rvm dizini çok daha güvenli! ve sonuç çok daha tutarlı!
- 1. Tüm hazırda bekletme denetimleri için yalnızca bir tablo kullanabilir miyim?
- 2. Bir akışı ayrıştırmak için Boost.Regex'i kullanabilir miyim?
- 3. Tüm uzak kullanıcılar için SSL nasıl gerekir
- 4. Perl'deki tüm sinyaller için tek bir sinyal işleyici ayarlayabilir miyim?
- 5. SharedPreferences oturumu korumak için
- 6. Bir kullanıcının değiştirdiği tüm dosyaları söyleyebilmem için git alabilir miyim?
- 7. Ücretsiz deneme sürümünü etkinleştirmeden Google App Engine'i kullanabilir miyim?
- 8. Glassfish açık kaynak sürümünü ticari olarak kullanabilir miyim?
- 9. Apple Store'a yüklerken iOS Uygulama sürümünü x.x.x.x olarak kullanabilir miyim?
- 10. Sürekli işlemler için Sidekiq kullanabilir miyim?
- 11. Java Swing için CSS kullanabilir miyim?
- 12. Görünüm oluşturmayı hızlandırmak için CALayer kullanabilir miyim?
- 13. Kullanmak için JavaScript seç yazıcımı kullanabilir miyim?
- 14. md5() değerleri için VARCHAR (32) kullanabilir miyim?
- 15. Yerel html dosyaları için çıkarıcıyı kullanabilir miyim
- 16. EJB'ler için CDI yapıcı enjeksiyonu kullanabilir miyim?
- 17. Facebook'ta paylaşmak için UIActivityViewController kullanabilir miyim?
- 18. Yerel geliştirme için https kullanabilir miyim?
- 19. ActionScript kodunu belgelemek için DoxyGen kullanabilir miyim?
- 20. Kendi hizmetlerimi barındırmak için svchost.exe kullanabilir miyim?
- 21. ı ı tüm şirket için değerini değiştirmek için kullanabilir bir
- 22. Spring MVC ve Spring WS'yi tek bir uygulamada kullanabilir miyim?
- 23. Program klasörüm için tüm kullanıcılar için yazma izinlerini ayarla
- 24. Spring FileSystemResource için ortam değişkeni tabanlı bir konum kullanabilir miyim?
- 25. Farklı bir veritabanını kullanabilir miyim?
- 26. ListView konumunu korumak için nasıl
- 27. Özel bir haritayı görüntülemek için Google Haritalar API'sını kullanabilir miyim?
- 28. Foreach'i yalnızca belirli bir koleksiyondan iade etmek için kullanabilir miyim?
- 29. AngularJs Direktiflerini yapay bir Öğeye uygulamak için kullanabilir miyim?
- 30. Bir görünümü 360 derece döndürmek için CGAffineTransformMakeRotation kullanabilir miyim?
RVM hakkında başka sorularınız varsa, freenode'daki #rvm kanalında 7/24 yardım etmek isteyen insanlar var: http://webchat.freenode.net/?channels=rvm. –
"Herhangi bir kullanıcı kaynağı/usr/local/rvm/scripts/rvm" ile ne kastettiğinizden emin değilim ... Şunu düşünürüm: Rails uygulamasını çalıştıran bir web sunucum varsa, Ruby 1.9.2 ve karşılık gelen mücevherleri kullandığından emin olmak istiyorum. Web sunucusu kullanıcısının RVM'yi nasıl kullanmasını sağlayabilirim? –
Bu gerçekten web sunucusu ne kullandığına bağlıdır. Sourcing, bu dosyayı ortamınıza yüklediğiniz anlamına gelir (yani, '/ etc/bashrc' kaynağında' source/usr/local/rvm/scripts/rvm' satırını veya bir şeyi yerleştirin). Web sunucunuzun 1.9.2 kullandığından emin olmak, sistem rubyosunu kullandığından emin olmakla aynıdır: Yolda ilk önce olması gerekir. Diğer şeylerin yanı sıra, rvm kaynaklarının da ilgilenmesi. –