Установка Ruby on Rails на Debian

Источник https://www.8host.com/blog/ustanovka-ruby-on-rails-na-server-debian-7-0-... не учитывал скачку ключей.

  1. su -
  2. apt-get update
  3.  
  4. gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
  5.  
  6. \curl -L https://get.rvm.io | bash -s stable --rails

Чтобы использовать команду rvm, нужно сообщить системе расположение RVM. При выполнении предыдущей команды установки RVM выдалось сообщение с предложением ввести такую команду:

source /usr/local/rvm/scripts/rvm

Эту команду надо выполнить от имени пользователя, который будет пользоваться RVM.

Для проверки работы RVM:

  1. rvm info
  2.  
  3. ruby-2.3.0:
  4. system:...

 

Установка фреймворка Rails (гема Ruby)

gem install rails

 

Создать новый проект Ruby on Rails

  1. mkdir ~/ruby
  2. cd ~/ruby
  3. rails new sample

Если работа не под root, тогда установка прервется и придется выполнить следующее:

  1. cd sample
  2. bundle install --path vendor/bundle

 

Запуск сервера Ruby on Rails

cd ~/ruby/sample
rails s

Появятся ошибки:
/usr/local/rvm/gems/ruby-2.3.0/gems/bundler-1.13.6/lib/bundler/runtime.rb:94:in rescue in block (2 levels) in require': There was an error while trying to load the gem 'uglifier'. (Bundler::GemRequireError)
Gem Load Error is: Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes.
Backtrace for gem load error is:
/home/user/ruby/sample/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/runtimes.rb:58:in
autodetect'
/home/user/ruby/sample/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs.rb:5:in <module:ExecJS>'
/home/user/ruby/sample/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs.rb:4:in
'
/home/user/ruby/sample/vendor/bundle/ruby/2.3.0/gems/uglifier-3.0.2/lib/uglifier.rb:5:in `require'
...
...

Исправляются добавлением двух гемов в Gemfle:

geany ~/ruby/sample/Gemfile

Добавить:

gem 'execjs'
gem 'therubyracer'

И запустить установку прописанных гемов:

bundle install

Теперь, если не возникнет других ошибок, сервер запустится:

  1. rails s
  2.  
  3. => Booting Puma
  4. => Rails 5.0.0.1 application starting in development on http://localhost:3000
  5. => Run `rails server -h` for more startup options
  6. Puma starting in single mode...
  7. * Version 3.6.0 (ruby 2.3.0-p0), codename: Sleepy Sunday Serenity
  8. * Min threads: 5, max threads: 5
  9. * Environment: development
  10. * Listening on tcp://localhost:3000
  11. Use Ctrl-C to stop

По адресу localhost:3000 в браузере видно это:

rails server

Как напечатать и запустить первый блог на Ruby on Rails, читайте тут http://rusrails.ru/getting-started-with-rails