frame

Sveiki apsilankę!

Jei forume lankaisi pirmą kartą, kviečiame registruotis ir prisijungti prie diskusijų.

Prisijungti Registruotis

Ruby on Rails diegimas CentOS aplinkoje naudojant RVM

IV_VygandasSIV_VygandasS Serverių ekspertas (-ė)
edited 2013 spalio 17 Į Kitos aplikacijos
Šioje pamokoje pateikiame Ruby on Rails diegimo instrukcijas naudojant RVM (Ruby Version Manager), CentOS 6 aplinkoje.

Ruby on Rails - atviro kodo web aplikacijų karkasas (angl. framework), kuri remiasi Ruby programavimo kalba.

1. Atnaujiname sistemą:
sudo yum update

2. Susikuriame naują vartotoją:
adduser vartotojas

Nurodome naujai sukurtam vartotojui pageidaujamą slaptažodį:
passwd vartotojas

3. Priskiriame šį vartotoją prie sudo vartotojų sąrašo, tam įvykdome komandą:
/usr/sbin/visudo

Bei nurodome tas pačias teises kaip ir root vartotojui:
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
vartotojas      ALL=(ALL)       ALL

4. Prisijungiame naujai sukurtu sistemos vartotoju:
su - vartotojas

5. Įdiegiame RVM naudodami curl įrankį:
curl -L get.rvm.io | bash -s stable

6. Nurodome source kelią:
source /home/vartotojas/.bash_profile

7. Įdiegiame RVM priklausomybes:
rvm requirements

8. Įdiegiame Ruby:
rvm install 1.9.3

9. Nurodome įdiegtos Ruby versijos pagal nutylėjimą priskirtą naudojimą:
rvm use 1.9.3 --default

10. Patikriname ar visi reikalingi Ruby paketai yra įdiegti:
rvm rubygems current

11. Įdiegiame Rails:
gem install rails

Rezultatas:
Ruby on Rails įdiegtas. Dabar galime atlikti patikrinimą paleidžiant Rails serverį su pradine svetaine.

12. Įdiegiame sqlite-devel paketą:
sudo yum install sqlite-devel

13. Sukuriame aplikaciją pavadinimu testas:
rails new testas

14. Išbandome serverio paleidimą:
cd testas
rails s

Įvykdžius šią komandą, gauname klaidos pranešimą:
/home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/execjs-2.0.2/lib/execjs/runtimes.rb:51:in `autodetect': Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes. (ExecJS::RuntimeUnavailable)
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/execjs-2.0.2/lib/execjs.rb:5:in `<module:ExecJS>'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/execjs-2.0.2/lib/execjs.rb:4:in `<top (required)>'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/uglifier-2.2.1/lib/uglifier.rb:3:in `require'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/uglifier-2.2.1/lib/uglifier.rb:3:in `<top (required)>'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `require'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `block (2 levels) in require'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `each'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `block in require'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `each'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `require'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448@global/gems/bundler-1.3.5/lib/bundler.rb:132:in `require'
from /home/vartotojas/testas/config/application.rb:7:in `<top (required)>'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/railties-4.0.0/lib/rails/commands.rb:76:in `require'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/railties-4.0.0/lib/rails/commands.rb:76:in `block in <top (required)>'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/railties-4.0.0/lib/rails/commands.rb:73:in `tap'
from /home/vartotojas/.rvm/gems/ruby-1.9.3-p448/gems/railties-4.0.0/lib/rails/commands.rb:73:in `<top (required)>'
from bin/rails:4:in `require'
from bin/rails:4:in `<main>'


Šiuo atveju Rails neranda tinkamo JavaScript vykdomojo failo. Todėl įdiegiame porą Ruby paketų, kurie sutvarkys reikalingas priklausomybes mūsų aplikacijos aplinkoje.

15. Redaguojame Gemfile failą, kuriame yra nurodytos naudojamos aplikacijos specifikacija:
vi Gemfile

Pabaigoje pridedame šias dvi eilutes:
gem 'execjs'
gem 'therubyracer'

Išsaugome ir uždarome failą.

16. Paleidžiama komanda, kuri užtikrins kad visos priklausomybės yra įdiegtos:
bundle install

17. Paleidžiame Rails serverį ir patikriname mūsų aplikacijos veikimą:
rails s

Rezultatas:
=> Booting WEBrick
=> Rails 4.0.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2013-10-17 13:20:54] INFO  WEBrick 1.3.1
[2013-10-17 13:20:54] INFO  ruby 1.9.3 (2013-06-27) [x86_64-linux]
[2013-10-17 13:20:54] INFO  WEBrick::HTTPServer#start: pid=7106 port=3000

Apsilankome naršyklėje šiuo adresu:

http://<mūsų_serverio_IP_adresas>:3000

Apsilankius šiuo adresu turime pamatyti pradinį Rails puslapį.
ltju.png

---

Ruby on Rails dokumentaciją rasite apsilankę šiuo adresu.
Norėdami palikti komentarą, turite prisijungti arba registruokis.