rails version and copying app

I volunteer for a non-profit with a Ruby on Rails app and they recently lost their web developer. I have done a lot of programming from Perl to PHP and ASP, but never RoR. I’ve become somewhat familiar and been able to track down and make some cosmetic changes to some of the apps web pages, but I wanted to make sure what versions I’m dealing with and having a problem finding the Rails version. I found some instruction on how to determine and see we have ruby 1.9.3, but there is no rails command and not on the gems list, see below. How do I find my rails version?

root@app01:~/www# ruby -v

ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]

root@app01:~/www# rails -v

rbenv: rails: command not found

The `rails’ command exists in these Ruby versions:

1.9.3-p448

root@app01:~/www# gem list

*** LOCAL GEMS ***

activemodel (4.0.0)

activerecord (4.0.0)

activerecord-deprecated_finders (1.0.3)

activerecord-mysql-adapter (0.0.1)

activesupport (4.0.0)

arel (4.0.0)

atomic (1.1.13)

bigdecimal (1.1.0)

builder (3.1.4)

bundler (1.3.5)

i18n (0.6.5)

io-console (0.3)

json (1.5.5)

minitest (4.7.5, 2.5.1)

multi_json (1.7.9)

mysql (2.9.1)

rake (0.9.2.2)

rdoc (3.9.5)

thread_safe (0.1.2)

tzinfo (0.3.37)

This install is on a Ubuntu VPS using the nginx web server, I would like to get a copy of the app running on a local Ubuntu server I have in my office, but I am only running Apache on it now and would like to possibly run the app on Apache versus installing nginx. Hopefully I can do that once I have all my version information, but I’m also reading several different ways to install Rails, and what is passenger? The service to start nginx on the VPS is nginx-passenger. Any advice on the best way for me to go about getting my own copy of the app running would be appreciated. I have a copy of its MySQL db copied and loaded already, just need to get the app working.

Thanks for any help!

I volunteer for a non-profit with a Ruby on Rails app and they recently lost
their web developer. I have done a lot of programming from Perl to PHP and
ASP, but never RoR. I've become somewhat familiar and been able to track
down and make some cosmetic changes to some of the apps web pages, but I
wanted to make sure what versions I'm dealing with and having a problem
finding the Rails version. I found some instruction on how to determine and
see we have ruby 1.9.3, but there is no rails command and not on the gems
list, see below. How do I find my rails version?

root@app01:~/www# ruby -v
ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]
root@app01:~/www# rails -v
rbenv: rails: command not found

The `rails' command exists in these Ruby versions:
  1.9.3-p448

root@app01:~/www# gem list

*** LOCAL GEMS ***

activemodel (4.0.0)

That tells you it is rails 4.0.0 as activemodel is one of the
components. However, rather than seeing what versions are installed
(there could be more than one version of the gems installed) look in
the file Gemfile.lock in the applications root folder and you will see
what versions it /requires/.

I suggest you work right through a good tutorial such as
railstutorial.org (which is free to use online) which will show you
the basics of rails. A few days spend doing that will save you time
in the long run.

This install is on a Ubuntu VPS using the nginx web server, I would like to
get a copy of the app running on a local Ubuntu server I have in my office,
but I am only running Apache on it now and would like to possibly run the
app on Apache versus installing nginx. Hopefully I can do that once I have
all my version information, but I'm also reading several different ways to
install Rails, and what is passenger? The service to start nginx on the VPS
is nginx-passenger. Any advice on the best way for me to go about getting my
own copy of the app running would be appreciated. I have a copy of its MySQL
db copied and loaded already, just need to get the app working.

If you want this for development work then I suggest you install rails
using rvm [1]
That will give you a complete working setup in a few minutes.

Colin

[1]rvm.io

Colin Law wrote:

That tells you it is rails 4.0.0 as activemodel is one of the
components. However, rather than seeing what versions are installed
(there could be more than one version of the gems installed) look in
the file Gemfile.lock in the applications root folder and you will see
what versions it /requires/.

I have several GIT entries in the Gemfile.lock file and a list of gems after the following lines, but this list looks much more extensive than 'gem list' shows ...

GEM
   remote: https://rubygems.org/
   specs:
     <list of gems>

Then under DEPENDENCIES, I see ...

rails (= 3.2.13)

Does that explain my rails version? I don't see any references to 4.0.0.

I suggest you work right through a good tutorial such as
railstutorial.org (which is free to use online) which will show you
the basics of rails. A few days spend doing that will save you time
in the long run.

Yes, I've already found that and been reading, thanks.

If you want this for development work then I suggest you install rails
using rvm [1]
That will give you a complete working setup in a few minutes.

I used rvm to install same ruby-1.9.3-p392 as the VPS, following a doc here...

https://www.digitalocean.com/community/tutorials/how-to-install-rails-apache-and-mysql-on-ubuntu-with-passenger

After all setup in Apache, I am getting this Passenger application error in the browser....

cannot load such file -- bundler/setup (LoadError)
/usr/share/ruby-rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/usr/share/ruby-rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/lib/phusion_passenger/loader_shared_helpers.rb:263:in `block in run_load_path_setup_code'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/lib/phusion_passenger/loader_shared_helpers.rb:366:in `running_bundler'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/lib/phusion_passenger/loader_shared_helpers.rb:261:in `run_load_path_setup_code'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/helper-scripts/rack-preloader.rb:100:in `preload_app'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/helper-scripts/rack-preloader.rb:158:in `<module:App>'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/helper-scripts/rack-preloader.rb:29:in `<module:PhusionPassenger>'
/usr/share/ruby-rvm/gems/ruby-1.9.3-p392/gems/passenger-4.0.53/helper-scripts/rack-preloader.rb:28:in `<main>'

Perhaps I need to get some more gems installed? I did a 'gem install bundle' and still get the error. My gem list is this so far on the dev server I am trying to setup, not sure if this error is affecting things as well...

root@media:/etc/apache2# gem list
/usr/share/ruby-rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.

*** LOCAL GEMS ***

bundle (0.0.1)
bundler (1.7.4)
daemon_controller (1.2.0)
passenger (4.0.53)
rack (1.5.2)
rake (10.3.2)

On the production server, I have...

*** LOCAL GEMS ***

activemodel (4.0.0)
activerecord (4.0.0)
activerecord-deprecated_finders (1.0.3)
activerecord-mysql-adapter (0.0.1)
activesupport (4.0.0)
arel (4.0.0)
atomic (1.1.13)
bigdecimal (1.1.0)
builder (3.1.4)
bundler (1.3.5)
i18n (0.6.5)
io-console (0.3)
json (1.5.5)
minitest (4.7.5, 2.5.1)
multi_json (1.7.9)
mysql (2.9.1)
rake (0.9.2.2)
rdoc (3.9.5)
thread_safe (0.1.2)
tzinfo (0.3.37)

But again the list in the Gemfile.lock file lists many more. Just trying to get a grasp of where to go from here, what is need to get this copy to run, appreciate any help!

My guess is that the system ruby (the one you get when you type “gem list” by default) is NOT the one the app is using. You may want to check the app directories for a “.rvmrc” or “.ruby-version” file, or the nginx config for a setting telling it which Ruby to use…

–Matt Jones