Comment installer Ruby on Rails avec PostgreSQL sur Rocky Linux 8.4

Ruby on Rails ou RoR ou Rails est un cadre d’application Web gratuit et open-source écrit en Ruby avec la licence MIT. C’est un framework web complet qui utilise le modèle modèle-vue-contrôleur (MVC).

Le framework Web Rails fournit des structures pour une base de données, un service Web et des pages Web. De plus, Rails comprend certains outils importants tels que scaffolding, Puma, Gems, etc.

Conditions préalables

Dans ce tutoriel, tu vas apprendre à installer Ruby on Rails avec la base de données PostgreSQL sur le système Rocky Linux.

Avant de commencer ce guide, assure-toi que tu as mis en place les conditions suivantes :

Pour cet exemple, nous utilisons la machine suivante :

  • Système d’exploitation : Rocky Linux 8.4 (Green Obisidian)
  • Adresse IP : 192.168.1.10

Avant de commencer ce guide, effectue l’installation suivante de PostgreSQL sur ton système.

Comment installer PostgreSQL sur Rocky Linux

Si tu es prêt, commence l’installation de Rails.

Installe RVM (Ruby Version Manager)

Ruby Version Manager ou RVM est un outil en ligne de commande pour gérer Ruby sur le système Linux. L’utilisation de RVM te permet d’installer plusieurs versions de Ruby sur un seul système d’exploitation.

Tout d’abord, tu vas installer le RVM sur le système Rocky Linux, puis installer la version spécifique de Ruby avec.

1. Importe les clés GPG des développeurs RVM sur ton système à l’aide de la commande suivante.

curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import -

2. Installe RVM à l’aide de la commande suivante.

curl -L get.rvm.io | bash -s stable

Une fois l’installation de RVM terminée, charge le profil RVM dans ton shell.

source /etc/profile.d/rvm.sh

3. Ensuite, recharge le RVM et installe tous les paquets dépencneis pour RVM en exécutant la commande ci-dessous.

rvm reload
rvm requirements run

Tu es prêt à installer Ruby avec la commande‘rvm‘ lorsque l’installation de tous les paquets dépendants est terminée.

Dépendances d'installation de rvm

4. Exécute la commande ‘rvm’ ci-dessous pour vérifier la version disponible de Ruby dans le référentiel RVM.

rvm list known

Installation de Ruby avec RVM

La version actuelle de Rails nécessite Ruby 2.5 ou plus. Dans cette étape, tu vas installer Ruby 3.0 à l’aide de l’outil RVM.

1. Exécute la commande‘rvm‘ ci-dessous pour installer la dernière version de Ruby.

rvm install ruby

L’installation prendra un certain temps, en fonction de ta connexion et de ton système.

rvm install ruby

2. Une fois l’installation de Ruby terminée, vérifie à l’aide de la commande suivante.

Vérifie l’installation de Ruby sur la machine locale à l’aide de la commande ‘rvm’.

rvm list

Vérifie la version de Ruby à l’aide de la commande suivante.

ruby --version

Tu verras le résultat‘ruby 3.0.0‘ comme ci-dessous.

rvm liste ruby installé

Installer Node.js et Yarn sur Rocky Linux

Le cadre web Rails utilise HTML, CSS et JavaScript pour l’interface utilisateur. Les Rails ont besoin des paquets Node.js et yarn pour gérer les applications JavaScript.

Dans cette étape, tu vas installer Node.js à partir du dépôt officiel de Rocky Linux et installer Yarn à l’aide du Node Package Manager (NPM).

1. Avant d’installer le paquet Node.js, exécute la commande suivante pour activer le dépôt Node.js v14.

sudo dnf module enable nodejs:14

Tape ‘y’ et appuie sur‘Enter‘ pour confirmer.

Active le module nodejs

2. Installe maintenant Node.js et npm à l’aide de la commande DNF ci-dessous.

sudo dnf install nodejs npm -y

3. Une fois l’installation terminée, exécute la commande npm ci-dessous pour installer Yarn à l’échelle du système.

npm install -g yarn

4. Vérifie Node.js et Yarn à l’aide de la commande suivante.

node --version
yarn --version

Voici le résultat similaire que tu obtiendras.

# current nodejs version
v14.17.5

# current yarn version
1.22.17

Tu es maintenant prêt à installer Ruby on Rails sur le système Rocky Linux.

Installation de Ruby on Rails (RoR) sur Rocky Linux

Pour installer Ruby on Rails, tu peux utiliser la ligne de commande ‘gem’. La commande Gem fait partie du paquetage Ruby, disponible dans le répertoire‘/usr/local/bin‘.

1. Avant d’utiliser la commande gem, ajoute le répertoire ‘/usr/local/bin‘ à la variable d’environnement‘$PATH‘ dans la configuration `~/.bashrc`.

echo "export PATH=$PATH:/usr/local/bin" >> ~/.bashrc

Exécute maintenant la commande ci-dessous pour recharger l’environnement bash actuel.

source ~/.bashrc

Et tu es prêt à exécuter la commande‘gem‘.

2. Exécute la commande gem ci-dessous pour installer Ruby on Rails.

gem install rails

La commande gem ci-dessous installera certains paquets RubyGems et la bibliothèque Node.js pour Rails.

3. Une fois l’installation de Rails terminée, vérifie à l’aide de la commande suivante.

rails --version

Tu verras une sortie similaire à celle ci-dessous. Dans cet exemple, la version actuelle de Rails est‘6.1.x‘.

Rails 6.1.4.1

Configurer l’utilisateur PostgreSQL

Assure-toi que tu as terminé l’installation du serveur PostgreSQL sur le système Rocky Linux.

Tu vas maintenant installer quelques dépendances de paquets supplémentaires pour le projet Rails et créer un nouvel utilisateur PostgreSQL.

1. Exécute la commande DNF ci-dessous pour installer les dépendances supplémentaires de PostgreSQL.

sudo dnf install postgresql-devel libpq-devel -y

2. Ensuite, connecte-toi au shell PostgreSQL à l’aide de la commande psql ci-dessous.

sudo -u postgres psql

3. Crée un nouvel utilisateur‘appuser‘ avec le privilège‘CREATEDB‘ et le mot de passe‘userpassword‘ à l’aide de la requête suivante.

CREATE ROLE appuser WITH CREATEDB LOGIN PASSWORD 'userpassword';

4. Vérifie les utilisateurs PostgreSQL disponibles à l’aide de la requête suivante.

\du

Tu verras l’utilisateur ‘appuser’ dans la section ‘Role name’ comme ci-dessous.

Crée un nouvel utilisateur PostgreSQL

Tape‘\q‘ et appuie sur ‘Enter’ pour quitter le shell PostgreSQL.

Tu es maintenant prêt à créer un nouveau projet Rails avec une base de données PostgreSQL.

Créer un nouveau projet Rails avec une base de données PostgreSQL

Dans cette étape, tu vas créer un nouveau projet Rails avec la base de données PostgreSQL.

1. Crée un nouveau répertoire ‘/var/www’, puis change ton répertoire de travail dans ce dernier.

mkdir -p /var/www; cd /var/www

2. Crée un nouveau projet Rails‘appname‘ avec la base de données par défaut PostgreSQL en utilisant la commande rails ci-dessous.

rails new appname --database=postgresql

La commande créera un nouveau répertoire‘appname‘.

3. Change ton répertoire de travail en ‘appname’ et modifie la configuration de la base de données ‘config/database.yml’.

cd appname
nano config/database.yml

Change le nom d’utilisateur et le mot de passe de la base de données dans les sections‘development‘,‘test‘ et‘production‘.

development:
  <<: *default
  database: appname_development
  username: appuser
  password: userpassword
  host: localhost
  port: 5432

test:
  <<: *default
  database: appname_test
  user: appuser
  password: userpassword
  host: localhost
  port: 5432

production:
  <<: *default
  database: appname_production
  username: appuser
  password: userpassword
  host: localhost
  port: 5432

Enregistre la configuration et quitte.

4. Ensuite, exécute la commande rails ci-dessous pour migrer la base de données PostgreSQL de ton projet.

rails db:setup
rails db:migrate

Rails db migrer

5. Exécute maintenant la commande suivante pour lancer ton projet rails. Et assure-toi de changer l’adresse IP par l’adresse IP de ton serveur.

rails server --binding=192.168.1.10

Le projet Rails est exécuté dans l’environnement‘Development‘ avec le port‘3000‘.

Runserver Rails

6. Ouvre ton navigateur Web et tape l’adresse IP du serveur avec le port‘3000‘ dans la barre d’adresse.

http://192.168.1.10:3000/

Tu verras maintenant la page d’index par défaut de Ruby on Rails comme ci-dessous.

Page d'accueil de Rails

Tu as réussi à créer un projet Rails avec une base de données PostgreSQL.

Conclusion

Félicitations ! Tu as appris l’installation de base de Ruby on Rails avec la base de données PostgreSQL sur le système Rocky Linux. Tu as également appris l’installation et l’utilisation de base de Ruby Version Manager (RVM) pour gérer Ruby.

Pour la prochaine étape, tu seras peut-être intéressé(e) par le déploiement de ton projet Rails avec Passenger et le serveur Web Nginx ou Apache.

Vous aimerez aussi...