Preparazione server Linux per Rails

Prepariamo una macchina virtuale con Ubuntu Server sulla quale eseguiremo Ruby on Rails.

Creazione della macchina virtuale

Per prima cosa creiamo una macchina virtuale Linux sulla quale faremo funzionare Ruby on Rails:

  1. vai sul sito dei download di VirtualBox
  2. aggiorna VirtualBox all'ultima versione
  3. installa Oracle VM Virtualbox extension pack
  4. crea una macchina virtuale di tipo Linux con 2GB di RAM
  5. installa Ubuntu Server 20.04 LTS
  6. scegli un nome per il server, un nome utente e una password per te che ti sia facile ricordare
  7. quando richiesto accertati di scegliere il layout di tastiera italiano
  8. quando richiesto accertati di selezionare l'opzione che conferma l'installazione di OpenSSH server

Dopo aver terminato l'installazione accedi e crea una cartella rails nella tua home directory, usando questi comandi:

nota: puoi ottenere il simbolo ~ premendo F6

Al termine spegni correttamente la tua macchina virtuale dando il comando:

Inoltro delle porte

Ci sarà utile poter accedere a due porte della macchina virtuale.

Vai su:

  • Impostazioni della macchina virtuale
  • Rete
  • Avanzate
  • Inoltro delle porte

e configura due regole come nell'immagine seguente:

Nuovo progetto su RubyMine

  1. Se non lo hai ancora fatto installa RubyMine dalla toolbox di JetBrains
  2. Crea nel tuo desktop una cartella rails dove metterai tutti i tuoi progetti fatti con Ruby on Rails
  3. Crea al suo interno una sottocartella ruby per questo progetto di esempio
  4. Avvia RubyMine
  5. Crea un nuovo progetto
  6. Mantieni la selezione Ruby - Empty Project (progetto vuoto)
  7. Location: seleziona la cartella rails/prova che hai creato prima sul desktop

  1. Non preoccuparti di eventuali segnalazioni sull'assenza del Ruby SDK
  2. premi CREATE

Collegamento SSH

Vogliamo ora collegarci alla shell linux della nostra macchina virtuale dall'interno di RubyMine, perché è più comodo.

Prima di iniziare accertati che la macchina virtuale sia avviata.

  1. Menù File - Settings
  2. Tools - SSH Terminal
  3. Set up configurations
  4. +

  1. Compila come nell'immagine, inserendo il tuo nome utente e password
  2. Premi Test Connection e verifica che il collegamento funzioni
  3. Se lo desideri rinomina la connessione (io ho scelto il nome vm = virtual machine)
  4. Premi OK per chiudere la scheda delle impostazioni 

Ora potrai aprire da RubyMine un terminale sul tuo server linux dal menù:

Tools - Start SSH Session - nome del tuo server - nome della connessione (es. vm)

E da qui potrai digitare tutti i comandi che vedremo nei passi successivi.


Potresti usare questa procedura anche per collegarti a un server remoto negli Stati Uniti o in qualche altra parte del mondo: ti basta avere l'indirizzo IP del server e naturalmente nome utente e password.

Installazione dei prerequisiti

Esegui questi comandi nella shell del tuo server per installare alcuni pacchetti necessari a Rails.

Fai molta attenzione all'output di ognuno di questi comandi: non procedere coi comandi successivi se vedi qualche errore! Nel caso prova anche a uscire dalla shell (comando exit) e rientrare.
O riavvia la macchina virtuale: nell'informatica è sempre una buona regola!


sudo apt install curl
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
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-get install -y nodejs

sudo apt-get update
sudo apt-get install git-core zlib1g-dev build-essential libssl-dev
sudo apt-get install libreadline-dev libyaml-dev libsqlite3-dev sqlite3
sudo apt-get install libxml2-dev libxslt1-dev
sudo apt-get install libcurl4-openssl-dev software-properties-common
sudo apt-get install libffi-dev yarn

 

Installazione di Ruby

E' arrivato il momento di installare Ruby, il linguaggio di programmazione che useremo
e che sta alla base di Rails.

Esegui i seguenti comandi nella shell del tuo server:


cd
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
exec $SHELL

rbenv install 2.6.3
rbenv global 2.6.3
ruby -v

 

L'ultimo comando serve a verificare la versione di Ruby installata:

Installazione di Bundler

Bundler è il pacchetto che gestisce le gem di ruby: ogni gem è come un plugin che serve ad aggiungere nuove funzionalità al linguaggio.


gem install bundler
 

Installazione di Rails

E' venuto finalmente il momento di installare Rails:


gem install rails -v 6.0.3.3
rbenv rehash
rails -v

 

Ancora una volta l'opzione -v permette di visualizzare la versione di rails installata:

Impostazione del Ruby SDK remoto

Informiamo ora RubyMine della versione esatta di Ruby che useremo.

  1. menù Settings
  2. Language & Frameworks
  3. Ruby SDK and Gems
  4. + new remote
  5. SSH
  6. SSH configuration: vm (il nome della connessione che hai creato prima)
  7. Ruby or version manager path: /home/TUO-NOME-UTENTE/.rbenv/bin/rbenv
  8. OK
  9. Ti sarà chiesto di selezionare la versione di Ruby che vuoi usare, che è quella che abbiamo appena installato
  10. metti il pallino in corrispondenza dell'SDK remoto appena creato
  11. premi OK
  • LINUX
  • SERVER
  • RUBY
  • RAILS

CFP CNOS-FAP DON BOSCO - via XIII Martiri, 86 - 30027 San Donà di Piave (VE) - tel. 0421 338 980 - Organismo di Formazione accreditato dalla Regione del Veneto