Ruby è un potente linguaggio di programmazione. È un linguaggio interpretato, di alto livello e di uso generale che incorpora molteplici paradigmi di programmazione. Yukihiro Matsumoto, il creatore di Ruby, ha unito varie parti dei suoi linguaggi di programmazione preferiti come Perl, Ada, Lisp, Eiffel, Smalltalk, ecc., e ha creato Ruby. Nelle sue stesse parole, intendeva rendere Ruby “più naturale, non semplice”.
Gran parte della popolarità di Ruby deriva da Ruby on Rails. È un potente framework web basato su Ruby. Funge da backend per numerose applicazioni web, ad esempio Airbnb, Spotify, GitHub, SoundCloud e altre ancora. La filosofia di Ruby on Rails è quella di offrire un framework intuitivo per velocizzare la creazione di pagine web robuste e ad alte prestazioni.
Essendo un framework web, Ruby on Rails può funzionare con i motori di database più diffusi, ad esempio SQLite, MySQL/MariaDB, e PostgreSQL. Questa guida mostrerà come gettare le fondamenta di un'app Ruby on Rails che utilizza MySQL come motore di database.
Prerequisites
- Tutti i passaggi illustrati in questa guida vengono eseguiti su Ubuntu 21.04. Scopri di più su come configurare un server Ubuntu qui.
- Mostreremo anche una rapida dimostrazione sull'installazione e la configurazione di un server MySQL. Per maggiori informazioni, fai riferimento a questa guida su come configurare MySQL.
- Per quanto riguarda l'installazione e la gestione di Ruby, utilizzeremo rbenv. È uno strumento progettato per aiutare a gestire l'ambiente Ruby. Rispetto a RVM, rbenv presenta le sue differenze.
Passo 1: Installazione e configurazione di MySQL
MySQL fungerà da backend del database per la nostra app Ruby on Rails. Supponendo che tu non abbia già installato e configurato MySQL, segui i passaggi. Avvia un terminale e aggiorna la cache APT:
|
1 |
sudo apt update |
Quindi, installa i componenti di MySQL:
|
1 |
sudo apt install install mysql-server mysql-client libmysqlclient-dev |
Una volta completata l'installazione, esegui il seguente script MySQL. Eseguirà una rapida configurazione post-installazione:
|
1 |
sudo mysql_secure_installation |
Lo script porrà diverse domande. Completa i passaggi per terminare la configurazione iniziale:
-
Passaggio aggiuntivo
Il passaggio seguente è facoltativo e dovrebbe essere eseguito solo se, più avanti nel tutorial, Ruby on Rails non riesce a connettersi al server MySQL. Imposta l'utente root in MySQL per utilizzare mysql_native_password per consentire i tradizionali accessi con password. Accedi all'account root su Ubuntu:
|
1 |
sudo su |
Ora, avvia la shell root di MySQL senza controllo della password:
|
1 |
mysql -u root --skip-password |
Successivamente, esegui la seguente query per modificare la password e impostare mysql_native_password come metodo di autenticazione:
|
1 2 |
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<password>'; FLUSH PRIVILEGES; |
Passo 2: Installazione e configurazione di Ruby e Ruby on Rails
Il nostro server di database è pronto per la produzione. Ora dobbiamo installare Ruby. Come accennato in precedenza, utilizzeremo rbenv come gestore delle versioni di Ruby per il nostro progetto. Ruby on Rails è disponibile come gemma Ruby.
-
Installazione di rbenv
Il gestore Ruby rbenv è direttamente disponibile dal server dei pacchetti ufficiale di Ubuntu. Per altre distribuzioni, consulta la guida ufficiale all'installazione di rbenv.
Apri un terminale e installalo subito:
|
1 |
sudo apt install rbenv |
Successivamente, dobbiamo integrare rbenv con la shell predefinita. Esegui il seguente comando rbenv:
|
1 |
rbenv init |
Come dice l'output, per bash, dobbiamo includere la riga nel file locale bashrc. Senza entrare troppo nei dettagli, il file bashrc viene caricato ogni volta che l'utente apre una nuova shell in modalità interattiva. Apri il file in un editor di testo e aggiungi il seguente testo:
|
1 |
nano ~/.bashrc |
Salva il file e chiudi l'editor. Si consiglia di riavviare il terminale per rendere effettive le modifiche. In alternativa, puoi ricaricare il file bashrc nella shell corrente:
|
1 |
source ~/.bashrc |
Successivamente, installeremo un rbenv plugin per fornire il supporto per il comando rbenv install. Questo plugin è direttamente disponibile dal repository GitHub di rbenv. Esegui i seguenti comandi:
|
1 2 |
mkdir -p "$(rbenv root)"/plugins git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build |
Per testare la nostra configurazione di rbenv, esegui lo script rbenv-doctor:
|
1 |
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash |
Verificherà i vari componenti e segnalerà se è tutto a posto.
-
Installazione di Ruby
Una volta configurato rbenv, siamo pronti per installare Ruby. Il seguente comando elencherà tutte le versioni disponibili di Ruby:
|
1 |
rbenv install -l |
L'output sarà un po' lungo, quindi si consiglia di passarlo attraverso more o less per una migliore navigazione. L'elenco contiene anche varie build di Ruby. Ai fini di questa guida, ci concentreremo sull'ultima build ufficiale di Ruby. Al momento della stesura di questo articolo, si tratta di Ruby v3.0.3.
Ora, installa Ruby:
|
1 |
rbenv install <ruby_version> |
Il comando successivo dichiarerà il Ruby installato come versione globale disponibile per tutte le applicazioni:
|
1 |
rbenv global <ruby_version> |
Verifica l'installazione di Ruby:
|
1 |
ruby --version |
-
Installazione di Ruby on Rails
Il framework web è disponibile come gem per Ruby. Sebbene Ruby on Rails sia direttamente disponibile dai server dei pacchetti di Ubuntu, installarlo come gem offre una maggiore flessibilità.
Per prima cosa, installa la gem Bundler. È uno strumento che risolve le dipendenze delle gem. Rails dipende da esso:
|
1 |
gem install bundler |
L'esecuzione del comando successivo installerà l'ultima versione stabile di Ruby on Rails como gem:
|
1 |
gem install rails |
Se desideri installare una versione specifica, la struttura del comando sarà la seguente:
|
1 |
gem install rails <rails_version> |
Una volta installate le gem, esegui il seguente comando:
|
1 |
rbenv rehash |
Il gestore Ruby rbenv funziona creando directory dedicate per gli shim che puntano ai file della versione corrente di Ruby abilitata. Il sotto-comando rehash dice a rbenv di mantenere gli shim in quella directory per far corrispondere ogni comando Ruby a ogni versione installata di Ruby sul server. Dovrebbe essere eseguito ogni volta che installi una nuova versione di Ruby o una gem che fornisce comandi simili a Rails.
Verifica l'installazione di Rails:
|
1 |
rails -v |
Passo 3: Installazione della gem MySQL
Per connettersi al server MySQL, Rails ha bisogno di un adattatore. Useremo la gem mysql2 per questa funzionalità. Installa la gem mysql2 :
|
1 |
gem install mysql2 |
Passo 4: Creazione e configurazione di una nuova app Rails
-
Creazione di un'app di esempio
Finora abbiamo configurato tutti i componenti necessari per stabilire la nostra app Rails. Il seguente comando creerà una directory dedicata per l'app e posizionerà tutti i file necessari con il supporto MySQL:
|
1 |
rails new <app_name> -d mysql |
-
Configurazione della connessione MySQL
Ora dobbiamo inserire le informazioni MySQL necessarie in modo che Rails possa connettersi al database e scambiare dati. Per impostazione predefinita, Rails si connette a MySQL come root. Apri il file di configurazione del database di Rails:
|
1 2 |
cd <app_dir> nano config/database.yml |
Scorri verso il basso fino alla sezione seguente e inserisci la password root per MySQL. Quindi, salva il file e chiudi l'editor.
-
Implementazione delle modifiche al database
Se tutto è andato a buon fine, Rails dovrebbe ora essere in grado di connettersi a MySQL ed eseguire le operazioni di database necessarie. Il seguente comando creerà i database necessari:
|
1 |
rake db:create |
Passo 5: Testare la configurazione
Avvia il server di sviluppo Rails:
|
1 |
rails server --binding=<server_public_ip> |
Dovresti essere in grado di accedere alla pagina di benvenuto al seguente URL:
|
1 |
http://<server_public_ip>:3000 |
Considerazioni finali
In questa guida, abbiamo installato Ruby usando rbenv, installato la gemma Rails e configurato un'applicazione Rails di esempio per connettersi a MySQL e utilizzarlo come motore di database. Funge da ottimo scheletro per un'applicazione web scalabile e centralizzata.
Per scoprire come installare Ruby on Rails con RVM su Ubuntu 20.04, consulta il seguente tutorial Installare Ruby on Rails con RVM su Ubuntu 20.04. Per scoprire come configurare Ruby on Rails con PostgreSQL, consulta il seguente tutorial: Configurare Ruby on Rails con PostgreSQL.
Buona programmazione!






















Commenti
Ancora nessun commento. Scrivi il primo.