Comment configurer une base de données PostgreSQL avec Docker#
Dans ce tutoriel, nous allons apprendre à configurer une base de données PostgreSQL à l’aide de Docker. Docker permet de créer des environnements isolés et reproductibles, ce qui est idéal pour le développement et le déploiement.
Avant de commencer#
Assurez-vous d’avoir les éléments suivants installés sur votre machine :
- Docker
- Un éditeur de texte ou un IDE (comme VS Code)
Étape 1 : Créer un fichier docker-compose.yml#
Créez un fichier nommé docker-compose.yml dans votre projet. Ajoutez le contenu suivant :
version: '3.8'
services:
db:
image: postgres:15
container_name: postgres_db
environment:
POSTGRES_DB: myapp
POSTGRES_USER: myuser
POSTGRES_PASSWORD: mypassword
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
restart: unless-stopped
volumes:
postgres_data:Étape 2 : Lancer le conteneur PostgreSQL#
Ouvrez un terminal dans le répertoire contenant le fichier docker-compose.yml et exécutez la commande suivante :
docker-compose up -dCette commande lance PostgreSQL en arrière-plan. Vous pouvez vérifier que le conteneur est en cours d’exécution avec :
docker-compose psÉtape 3 : Se connecter à la base de données#
Vous pouvez vous connecter à la base de données PostgreSQL à l’aide de l’outil psql ou d’un client graphique comme DBeaver.
Utilisation de psql#
Exécutez la commande suivante dans votre terminal :
docker exec -it postgres_db psql -U myuser -d myappVous devriez voir un prompt myapp=>, indiquant que vous êtes connecté.
Utilisation d’un client graphique#
- Ouvrez DBeaver.
- Cliquez sur New Database Connection.
- Sélectionnez PostgreSQL comme type de base de données.
- Remplissez les champs :
- Host:
localhost - Port:
5432 - Database:
myapp - Username:
myuser - Password:
mypassword
- Host:
- Cliquez sur Test Connection pour vérifier que la connexion fonctionne.
- Cliquez sur Finish pour enregistrer la connexion.
Étape 4 : Créer une table de test#
Une fois connecté, exécutez la commande SQL suivante pour créer une table de test :
CREATE TABLE test_table (
id SERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);Ajoutez quelques données :
INSERT INTO test_table (name) VALUES ('Alice'), ('Bob');Vérifiez que les données ont été insérées :
SELECT * FROM test_table;Nettoyage#
Pour arrêter le conteneur PostgreSQL, exécutez :
docker-compose downPour supprimer les volumes persistants (attention, cela supprime toutes les données), utilisez :
docker-compose down -vConclusion#
Vous avez maintenant configuré une base de données PostgreSQL avec Docker. Cette méthode est rapide, reproductible et idéale pour les projets de développement. Vous pouvez facilement partager ce fichier docker-compose.yml avec votre équipe pour garantir une configuration identique sur tous les environnements.
Pour en savoir plus, consultez la documentation officielle de PostgreSQL.
Publié le 15 mai 2024