Heroku - 10 Heroku postgre partie 3

Bienvenue dans cette troisième partie de la prise en main de Heroku Postgres. Maintenant que tout est installé et configuré, nous allons créer une table avec pgAdmin, écrire une petite application Node.js qui enregistre des visites en base, puis la déployer sur Heroku. L'outil pgAdmin est nécessaire car on ne peut pas modifier directement la base Heroku : on a besoin d'un outil externe pour ouvrir une connexion.

Connexion pgAdmin et création de la table

Une fois pgAdmin lancé, on se connecte au serveur Postgres : clic droit sur le menu Servers > Create > Server. Vous saisissez les informations de connexion récupérées depuis la page Heroku Postgres de votre application : host, port, database, username et password. Ces informations sont propres à votre instance. Une fois connecté, vous voyez de nombreuses bases de données, mais vous n'avez accès qu'à la vôtre : elle est identifiable car elle n'a pas de petite croix rouge sur l'icône.

Dans cette base, créons une table visits qui enregistrera chaque visite sur l'application. Clic droit sur le dossier Tables > Create > Table. On y ajoute deux colonnes : un id auto-incrémenté qui servira de clé primaire, et un created_at en timestamp pour la date de création.

  • npm init : initialiser le projet Node.js
  • npm install pg : driver PostgreSQL
  • npm install express : serveur HTTP
  • package.json : script "start": "node app.js"
  • Déploiement via git init, git add, git commit, git push heroku master

Côté application, on crée un projet Node.js avec npm init. On installe ensuite deux dépendances : npm install pg pour le driver PostgreSQL et npm install express pour démarrer le serveur web qui insérera une visite en base à chaque requête reçue. Il reste à créer un fichier package.json avec un script start pointant sur node app.js — c'est ainsi qu'Heroku saura comment lancer l'application.

On crée enfin le fichier app.js dans lequel on colle le code (création du serveur Express, connexion à Postgres, insertion dans la table à chaque requête). Pour déployer, on se loggue avec heroku login, on initialise Git avec git init, on git add et git commit -m "first", puis on pousse vers Heroku avec git push heroku master. Heroku détecte l'application Node, installe les dépendances et exécute le code. Voilà tout pour Postgres ; à bientôt pour la prochaine vidéo.