Retour au blog

Configuration de Ruby on Rails avec PostgreSQL

Configuration de Ruby on Rails avec PostgreSQL

Parmi tous les moteurs de base de données disponibles, PostgreSQL est l'un des plus populaires. C'est un système de base de données open-source bien connu pour sa fiabilité, ses fonctionnalités robustes et ses performances. Parce que PostgreSQL est un choix populaire, il est pris en charge par presque tous les frameworks web majeurs. Tout comme ses concurrents MySQL et SQLite, PostgreSQL a également ses points forts et ses points faibles.

Ruby on Rails est un framework web populaire écrit en Ruby. C'est un framework indépendant de la base de données, ce qui signifie qu'il peut fonctionner avec une grande variété de bases de données. Par défaut, Rails suppose SQL pour les fonctionnalités de base de données. Cependant, il prend également en charge l'intégration de PostgreSQL.

Ce tutoriel va vous guider à travers le processus de configuration de PostgreSQL pour votre application Ruby on Rails.

Ruby on Rails et PostgreSQL

PostgreSQL et Ruby on Rails sont tous deux disponibles sur n'importe quelle distribution UNIX/Linux. Ils devraient être disponibles à partir des serveurs de paquets par défaut.

Une méthode alternative consiste à utiliser RVM (Ruby Version Manager). C'est un outil dédié à la gestion des installations de Ruby on Rails. L'avantage de cette approche est que RVM va créer une installation locale de Ruby on Rails. Il peut également gérer plusieurs versions de Ruby et basculer de manière transparente entre elles. Voici un tutoriel qui détaille les étapes de l'installation de Ruby on Rails avec RVM sur Ubuntu.

Quant à PostgreSQL, jetez un œil à ce guide rapide sur l'installation et la configuration de PostgreSQL sur Ubuntu.

  • Installation de RVM

Le processus d'installation de RVM est assez simple, grâce au script d'installation proposé par RVM. Le script est conçu pour détecter automatiquement le système Linux, puis télécharger et installer tous les paquets nécessaires. Nous avons besoin des clés GPG de RVM pour vérifier les paquets. Cela garantit que les paquets reçus ne sont pas falsifiés. Tout d'abord, ajoutez les clés GPG de RVM :

gpg_recv_keys Ruby on Rails with PostgreSQL

Ensuite, exécutez le script d'installation de RVM :

install_rvm Ruby on Rails with PostgreSQL

Enfin, vérifiez l'installation :

verify_install

  • Installation de Rails

Nous pouvons maintenant utiliser RVM pour installer des composants supplémentaires. Installez le framework Rails à l'aide de RVM :

gem_install_rails Ruby on Rails with PostgreSQL

  • Installation de PostgreSQL

L'étape suivante nécessite que PostgreSQL soit préinstallé sur le système. Par défaut, le moyen le plus simple d'installer PostgreSQL est d'utiliser le gestionnaire de paquets par défaut. Il est disponible pour toutes les principales distributions Linux. Consultez la page de téléchargement de PostgreSQL pour toutes les méthodes d'installation disponibles. Sur Ubuntu, les commandes suivantes vont configurer le dépôt PostgreSQL et l'installer immédiatement :

postgresql_get

add_postgresql_keys

apt_and_postgresql_update Ruby on Rails with PostgreSQL

Pour activer la prise en charge de PostgreSQL, nous devons installer la pg gem. Elle permet l'interfaçage avec PostgreSQL à partir du code Ruby :

gem_install_pg

  • Configuration de PostgreSQL

Après l'installation, nous allons configurer les outils que nous devrons utiliser pour nos projets. Tout d'abord, basculez vers l'utilisateur PostgreSQL :

Accédez au shell PostgreSQL :

psql Ruby on Rails with PostgreSQL

Dans le contexte de PostgreSQL, nous allons maintenant créer un nouveau rôle (classiquement connu sous le nom d'utilisateur). PostgreSQL a son propre format de rôles et de permissions. N'oubliez pas d'utiliser un nom d'utilisateur approprié et un mot de passe fort :

create_role

Création d'une application Rails

Dites à Rails de créer une nouvelle application Rails configurée pour utiliser PostgreSQL pour la base de données :

rails_new_dummy_app

Cela créera un nouveau répertoire avec le nom d'utilisateur de l'application. Rails s'attend généralement à ce que le nom d'utilisateur de la base de données et le nom de l'application soient identiques. L'étape suivante consiste à configurer la base de données de Rails. Le fichier de configuration se trouve à l'emplacement suivant :

Le fichier database.yml contient les données décrivant la base de données appropriée pour l'environnement Rails actuel. Comme le suggère le nom du fichier, il utilise YAML. YAML est un standard de sérialisation de données lisible par l'homme pour tous les langages de programmation.

Par défaut, Rails s'attend à différentes bases de données pour différents environnements, par exemple, development, test, et production. C'est utile dans diverses situations, par exemple, Rails videra et reconstruira la base de données de test à chaque fois qu'un test Rails est exécuté.

Voici un exemple de database.yml qui contient les bases de données de development et de test :

db_yaml

Il est maintenant temps d'appliquer les modifications. La commande suivante préparera les bases de données nécessaires décrites dans database.yml. Chaque base de données aura ses propres utilisateurs et ses tables schema_migrations . Cette table est nécessaire pour la migration des données et du schéma :

Cette étape échouera si le fichier de configuration de PostgreSQL pg_hba.conf contient des configurations incorrectes. Le fichier se trouve à l'emplacement suivant :

La ligne suivante est la cible. Au lieu de peer, la méthode d'authentification devrait être md5:

Modifiez la ligne :

pg_hba_conf

Pour que les modifications prennent effet, vous devez redémarrer le service PostgreSQL :

Ensuite, réexécutez la configuration de la base de données :

rake_db_setup

Exécution de Rails

L'exécution du serveur Rails nécessite le composant supplémentaire suivant. Notez que pour cela, vous devez avoir Node.js installé (avec yarn):

webpacker_install

L'application Rails devrait maintenant être prête à être lancée. Démarrez le serveur Rails :

rails_server

Le serveur devrait être accessible à partir de l'URL suivante. Il affichera la page d'accueil de Rails :

Pour rendre la page d'accueil plus intéressante, créez un scaffold :

create_scaffold

rakedb_migrate

Enfin, démarrez le serveur et accédez à nouveau à l'URL. Nous pouvons maintenant gérer les articles (création, modification et suppression d'articles).

Dernières réflexions

Il s'agit d'une configuration de base de Ruby on Rails avec PostgreSQL. Il existe un guide de démarrage officiel qui vous aidera à utiliser davantage Rails. L'exemple d'application que nous avons créé utilise PostgreSQL. De cette façon, vous pouvez créer n'importe quelle application qui utilise PostgreSQL pour ses fonctionnalités.

Bon développement !

author

Pranay Kapgate

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.