Ruby on Rails telepítési útmutató

2022. február 2.

by beni99

Tartalomjegyzék

Bevezetés

Ez a kis útmutató legfőképpen a tavaszi tanfolyamon résztvevőknek szól, de bárki más is olvassa nyugodt szívvel.

A Ruby on Rails egy nagyon népszerű webes keretrendszer, amivel érdemes megismerkednie akár annak is, aki nem feltétlen a webes világban akar elhelyezkedni. Sajnos a legelső akadály sokszor elég nagy szokott lenni, ami nem más mint a keretrendszer beüzemelése. Az olyan runtimeokkal ellentétben, mint például a NodeJS, ahol az LTS verzió feltepítéséve után már neki is lehet állni, itt elég sok buktatóba bele lehet futni, főleg ha valaki Windows rendszeren szeretne fejleszteni. Mivel a tanfolyamunk szerves része, hogy közös kódolások alkalmával mindenki kipróbálja a fejlesztés élményét, ezért ebben a kis cikkben leírom, hogyan lehet megugrani ezt az első akadályt. A telepítés menetét megmutatom Windows 10 és Ubuntu 20.04 operációs rendszereken is.

Ruby telepítése

Első lépésként a Ruby-t kell felraknunk, ami Windows és Linux rendszereken kicsit máshogy néz ki.

Windows

Bár van néhány dolog, ami Windows rendszereken nem igen, vagy csak nehézkesen működik, amikor Ruby-val dolgozunk, a tanfolyam alkalmakon csak olyan részeket fogunk érinteni, amiknek mindenképpen működniük kell.

Szükséges szoftverek

A Rails helyes működéséhez szükséged lesz néhány dologra.

Ezeknek a telepítésénél maradhatunk az alapértelmezett beállításoknál.

Ruby telepítése Windowsra

A telepítőt a rubyinstaller.org oldalról tudjuk letölteni. A (2022 tavaszi) tanfolyamhoz a Ruby+Devkit3.0.3-(x64) verziót töltsük le, majd futtassuk.

A telepítő varázslóban mindent hagyhatunk az alapértelmezett értéken.

A telepítés után előjön az MSYS2 és MINGW telepítője, amit szintén hagyhatunk alapértelmezett beállításokkal -> nyomjunk entert.

Nem kell megijedni, ha warningok és látszólagos hibák jönnek elő, ha a végén van egy zöld success felirat.

Ha minden jól megy, a ruby -v parancs kiadása után valami ilyesminek kell megjelenni:

Tipikus hiba: invalid byte sequence in UTF-8

Ha a Windows-on használt felhasználó nevünkben space vagy ékezetes betűk szerepelnek, akkor van esély, hogy a Rails alkalmazás létrehozásakor, elindításakor az alábbi hibaüzenetet kapjuk:

C:/Ruby30-x64/lib/ruby/3.0.0/pathname.rb:50:in `match?': invalid byte sequence in UTF-8 (ArgumentError) 

Ezt többféle képpen megoldhatjuk. A legegyszerűbb, ha létrehozunk egy új felhasználót, amit a Rails fejlesztéshez fogunk használni. Ezt a Gépház/Fiókok/Családtagok és más felhasználók/Más új felhasználó felvétele menüpont alatt tudjuk megtenni. Adjuk egy olyan nevet, amiben csak az angol ábécé kisbetűi találhatóak meg. Ezután még elérhetővé kell tennünk az új a felhasználónak is a a Ruby elérési útvonalát. Ehhez nyissuk meg a Gépház/Rendszer/Névjegy/Speciális rendszerbeállítások/ Környezeti változók ablakot. Itt válasszuk ki az eredeti felhasználónk alatt a PATH változót és kattintsunk a Szerkesztés gombra. Itt másoljuk ki a Ruby binárishoz tartozó útvonalat. Valami ilyesmi lesz:

C:\Ruby30-x64\bin 

Ezután nyissuk meg Rendszerváltozók alatt szerkesztésre a Path változót. Itt az új gomb megnyomásával másoljuk be a Ruby elérési útvonalát. Ha végeztünk mentsük el a módosításokat. Lépjünk át az új felhasználó fiókba és már elkezdhetjük használni a Ruby környezetet.

Megjegyzés a WSL-ről

Az interneten sok útmutatót találhat az ember, ahol a WSL (Windows Subsystem for Linux) segítségével telepítik fel a keretrendszert. Bár működőképes, de sok olyan mellékhatása van, amit ezen cikk keretében nem tudok mind felsorolni. Ezért aki komolyabban szeretne foglalkozni a Ruby fejlesztéssel, annak ajánlanék inkább egy Linux virtuális gépet, vagy második operációs rendszerként (Dual BOOT) egy Linux disztribúciót felrakni.

Ubuntu

Aki rendszeresen használ Linux alapú rendszereket, annak biztos ismerős lesz a feltelepítés módja, de azok kedvéért, akik esetleg most ismerkednek vele, megmutatom, hogy egy frissen telepített rendszerre hogyan érdemes felvarázsolni a Railst.

Szükséges szoftverek

Figyelem! A Linuxon való telepítéshez sudo jogosultsággal kell rendelkezned. A telepítéshez (és amúgy a szoftverfejlesztéshez általában) szükséged lesz git kliensre. És a Ruby futtatókörnyezet lefordításához (amit majd automatikusan a verziókezelő tesz meg) néhány fejlesztői könyvtárra. Ezeket a következő parancsok kiadásával tudod telepíteni.

sudo apt update
sudo apt install -y libssl-dev zlib1g-dev sqlite3 libsqlite3-dev git-all 

Ezen felül szükséged lesz még NodeJS-re és Yarn-ra. A következő parancsokkal lehet feltelepíteni őket:

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - 
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install -y yarn 

Rbenv telepítése

Linux rendszereken a normális telepítési mód helyett érdemes inkább egy verziókezelőt telepíteni, ami minden egyes projekthez a szükséges verziójú Ruby-t fogja betölteni, mindezt ✨ automágikusan ✨ a háttérben.

A szoftver telepítése sok féle képpen megtörténhet, érdemes elolvasni az rbenv github oldalát, de a készítők szolgáltatnak egy scriptet, ami megoldja számunkra a telepítés összes lépését. Ezt a következő parancsal futtathatjuk.

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/HEAD/bin/rbenv-installer | bash 

Megjegyzés: Nem egészséges ismeretlen internetről letöltött scripteket csak úgy futtatni, így mindig érdemes átnézni pontosan mit csinál, mielőtt elindítod.

Azért, hogy minden esetben működjön a program még manuálisan be kell állítani pár dolgot. Ahogy azt a telepítő végén írja is, hozzá kell adnunk a PATH változóhoz az rbenv helyét. Futtassuk a következő parancsokat:

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init - bash)"' >> ~/.bashrc 

Zárjuk be, majd nyissuk meg újra a terminált, hogy a módosításaink érvényességet nyerjenek. Hogy minden rendben van, azt ellenőrizhetjük a következő script futtatásával:

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash 

Valahogy így kell kinéznie:

Megfelelő Ruby verzió telepítése

Most már, hogy van egy verziókezelőnk, már csak meg kell adni, hogy mi legyen a verzió amivel dolgozni akarunk. Adjuk ki a következő parancsot:

rbenv install 3.0.3 && rbenv global 3.0.3 

Ez letölti, majd feltelepíti a kívánt verziót, majd beállítja globálisan, hogy ez legyen használva. Ha minden jól megy, a ruby -v parancs kiadása után a kiválasztott Ruby verziónak kell megjelennie:

ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) [x86_64-linux] 

macOS

Amennyiben macOS-re szeretnéd telepíteni a Railst, ajánlom ezt a weblapot olvasgatásra.

Rails telepítése

Ezután a Rails keretrendszer telepítése pofon egyszerű, csak ki kell adni parancssorban a megfelelő parancsokat:

gem install bundler
gem install rails 

Ez jónéhány csomagot, úgynevezet gem-et fog feltelepíteni, és ez eltarthat némi időbe.

Hello World applikáció

Most eljött az ideje, hogy kipróbáljuk, hogy minden működik-e. Parancssorban / terminálban navigálj egy olyan mappába, ahol a projekteket tárolni szeretnéd, majd add ki a következő parancsot:

rails new hello_world 

Legelső alkalommal ez is eltarthat sokáig, mert szintén fog egy két gem-et installálni.

Miután lefutott a parancs, navigálj be az elkészített mappába

cd hello_world 

és add ki a következő parancsokat.

bundle install
rails db:create
rails s 

A konzolon valami hasonlónak kell megjelenni

=> Booting Puma
=> Rails 7.0.1 application starting in development
=> Run `bin/rails server --help` for more startup options
*** SIGUSR2 not implemented, signal based restart unavailable!
*** SIGUSR1 not implemented, signal based restart unavailable! 
*** SIGHUP not implemented, signal based logs reopening unavailable! 
Puma starting in single mode... 
* Puma version: 5.6.1 (ruby 3.0.3-p157) ("Birdie's Version") 
* Min threads: 5 
* Max threads: 5 
* Environment: development 
* PID: 12360 
* Listening on http://[::1]:3000 
* Listening on http://127.0.0.1:3000 
Use Ctrl-C to stop 

és a http://127.0.0.1:3000 címre ellátogatva a következőt kell látni:

Végszó

Miután fel van telepítve a keretrendszer, már mehet is a fejlesztés. A következő cikkemben bemutatok néhány fejlesztést segítő programot, és két IDE-t, amivel még kényelmesebbé teheted a Ruby on Rails élményt.