Jak zbudować aplikację Ruby on Rails na Ubuntu 22.04

Wprowadzenie do tematu

Ruby on Rails to ceniony framework do projektowania aplikacji webowych, wyróżniający się szybkością działania i intuicyjnością obsługi. Zbudowany na języku Ruby, opiera się na architekturze Model-View-Controller (MVC). Ubuntu 22.04 to najnowsza odsłona popularnego systemu operacyjnego Linux, która oferuje szereg usprawnień i funkcji ułatwiających tworzenie oraz wdrażanie aplikacji Ruby on Rails.

Ten poradnik poprowadzi Cię przez cały proces konstrukcji aplikacji Ruby on Rails na Ubuntu 22.04. Szczegółowo omówimy instalację wszystkich niezbędnych elementów, procedurę tworzenia nowej aplikacji, a także jej wdrożenie na środowisko produkcyjne.

Konfiguracja środowiska – instalacja wymaganych zależności

Zanim przystąpimy do pracy nad aplikacją Ruby on Rails, konieczna będzie instalacja kilku kluczowych komponentów:

  • Ruby
  • Rails
  • PostgreSQL (opcjonalnie)

Instalacja Ruby i Rails

Ruby oraz Rails można zainstalować za pomocą następujących instrukcji w terminalu:

sudo apt update
sudo apt install ruby-full ruby-bundler

Aby upewnić się, że instalacja przebiegła pomyślnie, użyj poniższej komendy:

ruby -v

Oczekiwany wynik powinien prezentować się następująco:

ruby 3.1.2p20 (2021-07-07 revision 07b498ca78) [x86_64-linux]

Opcjonalna instalacja PostgreSQL

W przypadku, gdy zamierzasz wykorzystać PostgreSQL jako bazę danych dla Twojej aplikacji, wykonaj poniższe polecenie instalacyjne:

sudo apt install postgresql postgresql-contrib

Po zakończeniu instalacji, utwórz użytkownika i bazę danych dedykowaną Twojej aplikacji, wpisując kolejno:

sudo -u postgres createuser --pwprompt rails_user
sudo -u postgres createdb --owner rails_user rails_database

Tworzenie fundamentów aplikacji

Po pomyślnej instalacji niezbędnych narzędzi, możemy przejść do stworzenia nowej aplikacji Ruby on Rails. W pierwszej kolejności utwórz nowy folder dla swojej aplikacji, a następnie przejdź do niego:

mkdir example-app
cd example-app

Następnie wygeneruj szkielet nowej aplikacji Rails, posługując się poleceniem:

rails new example-app -d postgresql

Opcja -d postgresql informuje, że jako system bazodanowy ma zostać wykorzystany PostgreSQL.

Personalizacja i rozbudowa aplikacji

Teraz możemy zacząć modyfikować naszą aplikację Rails. Wygenerujmy kontroler i powiązany z nim widok, używając polecenia:

rails generate controller home index

To działanie utworzy kontroler o nazwie Home oraz widok index.

Otwórz plik app/views/home/index.html.erb i wprowadź w nim następujący kod HTML:

<h1>Witamy w naszej aplikacji opartej na Ruby on Rails!</h1>

Uruchomienie aplikacji

Aby uruchomić stworzoną aplikację, użyj w terminalu:

rails s

Aplikacja powinna być teraz dostępna pod adresem http://localhost:3000.

Wdrożenie aplikacji na serwerze

Gdy aplikacja jest gotowa do udostępnienia, można ją wdrożyć na serwer produkcyjny. Proces ten składa się z kilku etapów i różni się w zależności od dostawcy hostingu.

Standardowe etapy wdrożenia to:

  • Skompilowanie aplikacji do postaci wykonywalnej.
  • Przeniesienie skompilowanej wersji i pozostałych zasobów na serwer.
  • Utworzenie bazy danych i import danych.
  • Konfiguracja serwera webowego.
  • Uruchomienie aplikacji.

Konfiguracja serwera webowego

Konieczne jest skonfigurowanie serwera internetowego, aby obsługiwał aplikację Ruby on Rails. W Ubuntu 22.04 do wyboru mamy Apache lub Nginx.

Aby skonfigurować Apache, zmodyfikuj plik /etc/apache2/sites-available/example-app.conf, wstawiając poniższy kod:

<VirtualHost *:80>
ServerName example-app.com
DocumentRoot /var/www/example-app/public
</VirtualHost>

Dla serwera Nginx, zmodyfikuj /etc/nginx/sites-available/example-app.conf, umieszczając w nim następujący kod:

server {
listen 80;
server_name example-app.com;
root /var/www/example-app/public;
}

Na koniec, zrestartuj wybrany serwer:

sudo systemctl restart apache2

lub

sudo systemctl restart nginx

Podsumowanie

Konstruowanie aplikacji Ruby on Rails na Ubuntu 22.04 jest stosunkowo proste. Wymaga zainstalowania kilku elementów, utworzenia nowej aplikacji oraz umieszczenia jej na serwerze. Postępując zgodnie z instrukcjami przedstawionymi w tym poradniku, możesz samodzielnie zbudować działającą aplikację Ruby on Rails na najnowszej wersji Ubuntu.

Najczęściej zadawane pytania (FAQ)

1. Jakie korzyści niesie za sobą wykorzystanie Ruby on Rails?

Ruby on Rails jest znany z szybkości, łatwości użytkowania i rozległej społeczności użytkowników. Jest to wybór odpowiedni zarówno dla początkujących, jak i zaawansowanych programistów.

2. Jaki jest cel funkcji Rails Scaffold?

Rails Scaffold to narzędzie przyspieszające proces tworzenia podstawowych operacji CRUD (Create, Read, Update, Delete) dla zasobów aplikacji. Generuje ono automatycznie kontrolery, widoki i testy dla zdefiniowanego modelu.

3. Gdzie szukać pomocy w kwestii Ruby on Rails?

Wsparcie techniczne można znaleźć na oficjalnej witrynie Ruby on Rails, na dedykowanych forach internetowych oraz w grupach dyskusyjnych online.

4. Jakie są zalecane praktyki w kontekście Ruby on Rails?

Do polecanych praktyk należą m.in. przestrzeganie konwencji Rails, unikanie nadmiernej złożoności kodu, a także regularne testowanie aplikacji.

5. Jak można usprawnić wydajność aplikacji Ruby on Rails?

Wydajność aplikacji można poprawić poprzez zastosowanie mechanizmów cachowania, optymalizację zapytań do bazy danych oraz unikanie zbędnego ładowania zasobów.

6. Jakie istnieją alternatywy dla Ruby on Rails?

Do alternatywnych frameworków zalicza się Django (Python), Laravel (PHP) oraz Spring Boot (Java).

7. Jakie materiały mogą posłużyć do nauki Ruby on Rails?

Dostępnych jest wiele materiałów edukacyjnych, m.in. samouczki online, książki oraz kursy dedykowane nauce Ruby on Rails.

8. W jaki sposób można przyczynić się do rozwoju społeczności Ruby on Rails?

Do wkładu w rozwój społeczności można zaliczyć zgłaszanie błędów, tworzenie dokumentacji, a także projektowanie nowych funkcji.

Tagi tematyczne

  • Ruby on Rails
  • Ubuntu 22.04
  • Framework aplikacji webowych
  • Tworzenie aplikacji

newsblog.pl