Pour créer un environnement Docker avec un serveur MySQL et phpMyAdmin,

 

vous pouvez utiliser un fichier docker-compose.yml. Voici comment procéder :

### Prérequis

Assurez-vous d’avoir *Docker* et *Docker Compose* installés sur votre machine.

### Étapes à suivre

1. *Créer un dossier de projet :*

bash
mkdir mysql-phpmyadmin
cd mysql-phpmyadmin

2. **Créer un fichier docker-compose.yml :**

 

Dans le dossier, créez un fichier nommé docker-compose.yml avec le contenu suivant :


yaml
version: '3.8'
services:
db:
image: mysql:latest
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpassword # Remplacez par votre mot de passe
MYSQL_DATABASE: nom_de_la_base # Nom de votre base de données
MYSQL_USER: utilisateur # Nom d'utilisateur
MYSQL_PASSWORD: motdepasse # Mot de passe de l'utilisateur
ports:
- "3306:3306"
volumes:
- db_data:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin
restart: always
environment:
PMA_HOST: db
PMA_USER: utilisateur # Utilisateur MySQL
PMA_PASSWORD: motdepasse # Mot de passe utilisateur MySQL
ports:
- "8080:80"
volumes:
db_data:

 

Remplacez rootpassword, nom_de_la_base, utilisateur et motdepasse par les valeurs de votre choix.

3. *Lancer les conteneurs :*

Exécutez la commande suivante pour démarrer vos conteneurs MySQL et phpMyAdmin :
bash
docker-compose up -d

L’option -d exécute les conteneurs en arrière-plan.

4. *Vérifier que les conteneurs fonctionnent :*

Vous pouvez vérifier que vos conteneurs sont actifs en exécutant :
bash
docker ps

Vous devriez voir les conteneurs MySQL et phpMyAdmin en cours d’exécution.
5. *Accéder à phpMyAdmin :*
Ouvrez votre navigateur et allez à l’adresse suivante :

http://localhost:8080

Connectez-vous avec les identifiants que vous avez définis dans le fichier docker-compose.yml.
### Arrêter et supprimer les conteneurs
Pour arrêter les conteneurs, utilisez :
bash
docker-compose down

### Conclusion

Vous avez maintenant un environnement Docker fonctionnel avec un serveur MySQL et phpMyAdmin. Cela vous permet de gérer facilement vos bases de données via une interface graphique. Vous pouvez personnaliser votre configuration selon vos besoins.