簡體   English   中英

捆綁安裝 - Ubuntu上的Rails

[英]Bundle Install - Rails on Ubuntu

我在生產服務器上安裝捆綁包時遇到問題。 我在DigitalOcean運行Rails和Ubuntu 14.02時有一個新的Droplet。 如果我以root身份運行:

bundle install

我得到以下消息,我的應用程序中斷,從Nginx開始收到“Bad Gateway”錯誤:

Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will break this application for all non-root users on this machine.

如果我作為rails用戶運行bundle install:

su rails
bundle install

然后我收到這個錯誤:

sh: 1: bundle: not found

我錯過了什么? 我已經瀏覽了互聯網並嘗試了我能找到的所有解決方案,並且無法使其正常運行。

謝謝你的幫助,

看起來像為root用戶安裝了Bundler gem,但沒有為rails用戶安裝。

  1. 如果您沒有使用rubben版本管理器,例如rbenv或rvm,請執行: gem install bundler

  2. 如果您有ruby版本管理器,則rails用戶無權訪問它,因為您僅為1位用戶安裝了它。 在這種情況下,您的問題不僅僅是無法運行bundler。 您可能根本沒有為該用戶安裝rails或ruby。

Rail on Rails One-Click應用程序上的ruby安裝由RVM管理。 如果您運行哪個捆綁包,則可以看到二進制文件已安裝到:

捆綁

/usr/local/rvm/gems/ruby-2.1.3/bin/bundle rails用戶沒有登錄shell,因此您需要手動將文件/etc/profile.d/rvm.sh發送到訪問Ruby安裝。

您可以通過運行以下命令為rails用戶設置正確的登錄shell:

chsh -s / bin / bash rails

這對我有用,它也應該適合你。 謝謝

我今天遇到這個問題,當我在vps上部署我的網絡應用程序時。

ruby版本管理的是RVM,

我嘗試安裝新的ruby版本2.2.2,但問題出現了

然后嘗試安裝新的捆綁版本,機器捆綁器是最新的1.12.3

gem uninstall bundler -v 1.12.3
gem install bundler -v 1.11.0

問題必須解決

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM