Dans le monde du développement web, Docker est devenu un outil incontournable. Il permet aux développeurs de créer, déployer et exécuter des applications dans des conteneurs légers et isolés. Ce tutoriel complet vous explique en détail comment fonctionne Docker, à quoi il sert et pourquoi il est devenu indispensable pour les applications web modernes. Ce tutoriel Docker est accessible à tous, y compris aux débutants.
- Docker : Qu'est ce que c'est ? À quoi il sert ?
- Exemple concret : Déploiement d’une application web sous Node.js avec Docker
- Exemple concret : Déployer une application PHP avec Docker
- Déployer une application PHP sous Docker sur un serveur en SSH
- Déployer une application PHP Docker sur un serveur OVH, IONOS ou O2Switch
- BONUS : Docker Compose, comment l'utiliser
- BONUS : Qu'est-ce qu'un fichier YAML ?
Docker : Qu’est ce que c’est ? À quoi il sert ?
Docker est une plateforme open-source qui permet de virtualiser des applications sous forme de conteneurs. Contrairement aux machines virtuelles, qui nécessitent une copie complète d’un système d’exploitation, un conteneur Docker partage le noyau du système hôte tout en restant isolé. Cela permet une exécution plus rapide et plus légère des applications.
Par exemple, si on développe une application web en PHP avec MySQL, Docker permet de créer un environnement identique à son PC et son serveur sans avoir à installer PHP, Apache et MySQL manuellement. Avec un simple docker-compose up -d, tout est prêt en quelques secondes ! 🔥 donc pas besoin de Mamp ou similaire !
Pourquoi utiliser Docker pour une application web ?
L’utilisation de Docker pour une application web offre plusieurs avantages :
- Portabilité : Un conteneur Docker peut fonctionner sur n’importe quel système (Windows, macOS, Linux) sans modification.
- Isolation : Chaque conteneur est indépendant et ne dépend pas du système hôte.
- Facilité de déploiement : Docker permet d’automatiser le déploiement d’une application web sans se soucier des différences entre les environnements.
- Scalabilité : Il est facile de dupliquer et de gérer plusieurs instances d’une application grâce à l’orchestration avec Docker Compose ou Kubernetes.
- Gestion des dépendances : Toutes les librairies et configurations nécessaires sont incluses dans l’image Docker.
Comment fonctionne Docker ?
Les Concepts Clés de Docker
- Images Docker : Ce sont des modèles préconçus contenant tout ce qu’il faut pour exécuter une application (code, dépendances, configurations).
- Conteneurs Docker : Un conteneur est une instance en cours d’exécution d’une image Docker.
- Dockerfile : Un fichier qui décrit les étapes pour créer une image Docker personnalisée.
- Docker Hub : Un registre en ligne où l’on peut trouver et partager des images Docker.
- Volumes Docker : Utilisés pour stocker les données persistantes d’un conteneur.
Cycle de Vie d’un Conteneur Docker
- Création d’une image via un Dockerfile.
- Construction de l’image avec la commande :
docker build -t mon-application
- Exécution du conteneur basé sur l’image créée :
docker run -d -p 8080:80 mon-application
- Gestion du conteneur avec des commandes comme
docker ps
,docker stop
,docker rm
.
Docker révolutionne le déploiement des applications web grâce à son approche basée sur les conteneurs. Il simplifie la gestion des environnements et assure une meilleure scalabilité et portabilité. Que vous soyez développeur débutant ou expérimenté, maîtriser Docker est aujourd’hui essentiel pour le développement web moderne.
Exemple concret : Déploiement d’une application web sous Node.js avec Docker
Dans cet exemple, nous allons dockeriser et déployer une application web simple avec Docker. L’application sera un serveur Node.js avec Express, qui affiche un message sur le navigateur.
Avant de commencer, assurez-vous d’avoir installé Docker sur votre machine :
Création de l’application web avec Node.js
Nous allons créer une petite application Node.js avec Express.
Créer l’arborescence du projet
Dans un dossier mon-app-docker
, créez la structure suivante :
mon-app-docker/
│── Dockerfile
│── package.json
│── server.js
Écrire le fichier package.json
Créez un fichier package.json
dans le dossier mon-app-docker
au format JSON :
{
"name": "mon-app-docker",
"version": "1.0.0",
"description": "Application web simple avec Docker",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"dependencies": {
"express": "^4.17.1"
}
}
Créer le fichier server.js
Créez un fichier server.js
qui va lancer un serveur web Express :
const express = require("express");
const app = express();
const PORT = 3000;
app.get("/", (req, res) => {
res.send("🚀 Mon application web tourne avec Docker !");
});
app.listen(PORT, () => {
console.log(`Serveur démarré sur http://localhost:${PORT}`);
});
Création du Dockerfile
Le Dockerfile définit l’environnement et la manière dont l’application doit être exécutée dans un conteneur.
Créez un fichier Dockerfile dans le dossier mon-app-docker
:
# 1. Utiliser l'image Node.js officielle
FROM node:18
# 2. Définir le dossier de travail dans le conteneur
WORKDIR /app
# 3. Copier les fichiers nécessaires
COPY package.json ./
COPY server.js ./
# 4. Installer les dépendances
RUN npm install
# 5. Exposer le port sur lequel l’application tourne
EXPOSE 3000
# 6. Lancer l’application
CMD ["npm", "start"]
Construire l’image Docker
Dans le terminal, placez-vous dans le dossier mon-app-docker
et exécutez la commande suivante :
docker build -t mon-app .
🔹 Explication :
docker build
: Construit une image Docker-t mon-app
: Attribue le nommon-app
à l’image
Lancer le conteneur
Une fois l’image construite, exécutez le conteneur avec :
docker run -d -p 8080:3000 mon-app
🔹 Explication :
docker run
: Lance un conteneur-d
: Mode détaché (en arrière-plan)-p 8080:3000
: Lie le port 8080 du PC au port 3000 du conteneurmon-app
: Nom de l’image à exécuter
Votre application est maintenant accessible à l’adresse :
🔗 http://localhost:8080
Vérifier que le conteneur tourne
Pour voir la liste des conteneurs actifs :
docker ps
Pour arrêter le conteneur :
docker stop <ID_DU_CONTENEUR>
Pour supprimer le conteneur :
docker rm <ID_DU_CONTENEUR>
(Optionnel) Utilisation de Docker Compose
Si vous voulez automatiser le lancement de votre application, vous pouvez utiliser Docker Compose.
Créez un fichier docker-compose.yml
:
version: "3"
services:
web:
build: .
ports:
- "8080:3000"
Puis, exécutez simplement :
docker-compose up -d
Vous avez maintenant une application Node.js qui tourne dans un conteneur Docker ! Cette méthode fonctionne aussi avec PHP, Python (Flask, Django), Ruby, etc...
💡 Pourquoi utiliser Docker pour une application web ?
✔️ Facilité de déploiement
✔️ Compatibilité assurée sur toutes les machines
✔️ Isolation des dépendances
Exemple concret : Déployer une application PHP avec Docker
Dans cet exemple, nous allons dockeriser et déployer une application PHP avec Apache en utilisant Docker.
Création de l’application PHP
Nous allons créer un projet PHP simple qui affiche un message sur une page web.
Arborescence du projet
Dans un dossier mon-app-php
, créez la structure suivante :
mon-app-php/
│── Dockerfile
│── index.php
│── site.conf
│── docker-compose.yml
Créer le fichier index.php
C’est notre fichier PHP principal, qui s’affichera dans le navigateur.
<?php
echo "🚀 Mon application PHP fonctionne avec Docker !";
?>
Création du Dockerfile
Le Dockerfile permet de définir l’environnement PHP et Apache à utiliser.
Créez un fichier Dockerfile dans mon-app-php
:
# 1. Utiliser l’image officielle PHP avec Apache
FROM php:8.2-apache
# 2. Copier les fichiers du projet dans le conteneur
COPY index.php /var/www/html/
# 3. Exposer le port 80 (port HTTP utilisé par Apache)
EXPOSE 80
# 4. Lancer Apache en arrière-plan
CMD ["apache2-foreground"]
Création du fichier site.conf
(Optionnel)
Si vous souhaitez configurer un hôte virtuel Apache, créez un fichier site.conf
:
<VirtualHost *:80>
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Construire l’image Docker
Placez-vous dans le dossier mon-app-php
et exécutez :
docker build -t mon-app-php
🔹 Explication :
docker build
: Construit une image Docker-t mon-app-php
: Attribue le nommon-app-php
à l’image
Lancer le conteneur PHP
Une fois l’image construite, exécutez le conteneur avec :
docker run -d -p 8080:80 mon-app-php
🔹 Explication :
docker run
: Lance un conteneur-d
: Mode détaché (en arrière-plan)-p 8080:80
: Lie le port 8080 du PC au port 80 du conteneurmon-app-php
: Nom de l’image à exécuter
Votre application PHP est maintenant accessible à l’adresse :
🔗 http://localhost:8080
Vérifier que le conteneur tourne
Pour voir les conteneurs actifs :
docker ps
Pour arrêter le conteneur :
docker stop <ID_DU_CONTENEUR>
Pour supprimer le conteneur :
docker rm <ID_DU_CONTENEUR>
(Optionnel) Utilisation de Docker Compose
Si vous voulez automatiser le lancement, utilisez Docker Compose.
Créez un fichier docker-compose.yml :
version: "3.8"
services:
php-apache:
build: .
ports:
- "8080:80"
volumes:
- .:/var/www/html
Lancez l’application avec :
docker-compose up -d
Félicitations ! Vous avez maintenant une application PHP qui tourne dans un conteneur Docker avec Apache !
💡 Pourquoi utiliser Docker pour une application PHP ?
✔️ Facilité de déploiement
✔️ Environnement isolé et reproductible
✔️ Fonctionne sur toutes les machines
Déployer une application PHP sous Docker sur un serveur en SSH
Maintenant que votre application PHP tourne localement avec Docker, nous allons voir comment la déployer sur un serveur distant.
Avant de commencer, assurez-vous d’avoir :
✅ Un serveur distant (VPS, dédié, ou cloud) avec Ubuntu/Debian
✅ Docker installé sur le serveur
✅ Accès SSH au serveur
✅ Un nom de domaine (optionnel, mais recommandé)
Installer Docker sur le serveur
Connectez-vous à votre serveur via SSH :
ssh utilisateur@mon-serveur-ip
Ensuite, installez Docker et Docker Compose :
sudo apt update && sudo apt install -y docker.io docker-compose
Vérifiez que Docker est bien installé :
docker --version
Transférer l’application sur le serveur
Il existe plusieurs méthodes pour envoyer votre code PHP sur le serveur :
Méthode 1 : Utiliser scp
(simple et rapide)
Depuis votre PC, transférez votre projet avec :
scp -r mon-app-php utilisateur@mon-serveur-ip:~/
Cela va copier le dossier mon-app-php
dans le répertoire home
du serveur.
Méthode 2 : Utiliser git
(meilleure gestion des mises à jour)
Si votre projet est sur GitHub ou GitLab, vous pouvez simplement le cloner sur le serveur :
git clone https://github.com/votre-repo/mon-app-php.git
Construire et exécuter l’application sur le serveur
Accédez au dossier de votre application :
cd mon-app-php
Puis, construisez l’image Docker :
docker build -t mon-app-php .
Lancez le conteneur en exposant le port 80 :
docker run -d -p 80:80 --restart always mon-app-php
🔹 Explication :
-d
: Exécute en arrière-plan-p 80:80
: Expose le port 80 du serveur--restart always
: Relance le conteneur en cas de crash/redémarrage
Votre application est maintenant disponible sur http://mon-serveur-ip !
(Optionnel) Déploiement avec Docker Compose
Si vous utilisez Docker Compose, créez un fichier docker-compose.yml
:
version: "3.8"
services:
php-apache:
build: .
ports:
- "80:80"
volumes:
- .:/var/www/html
restart: always
Lancez l’application avec :
docker-compose up -d
Ajouter un Nom de Domaine avec Nginx (Optionnel mais recommandé)
Si vous voulez accéder à votre site via un nom de domaine, il faut configurer un reverse proxy Nginx avec un certificat SSL.
Installer Nginx et Certbot
sudo apt install nginx certbot python3-certbot-nginx -y
Créer un VirtualHost pour votre domaine
Éditez un fichier de configuration Nginx :

Des formations informatique pour tous !
Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…
Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.
Découvrez mes formations Qui suis-je ?sudo nano /etc/nginx/sites-available/mon-site
Ajoutez :
server {
listen 80;
server_name mon-domaine.com;
location / {
proxy_pass http://localhost:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Activez le site et redémarrez Nginx :
sudo ln -s /etc/nginx/sites-available/mon-site /etc/nginx/sites-enabled/
sudo systemctl restart nginx
Ajouter un certificat SSL (HTTPS)
sudo certbot --nginx -d mon-domaine.com
Mettre à Jour l’Application
Si vous faites des modifications sur votre projet, voici comment les appliquer :
mon-app-php
git pull # Si vous utilisez Git
docker build -t mon-app-php .
docker stop mon-app-php
docker rm mon-app-php
docker run -d -p 80:80 --restart always mon-app-php
Votre application PHP tourne désormais sur votre serveur Dockerisé !
Cette méthode est fiable, scalable et facile à gérer.
🔹 Avantages de Docker pour le déploiement PHP :
✔️ Facile à migrer sur un autre serveur
✔️ Fonctionne sur toutes les configurations
✔️ Séparation des dépendances et de l’environnement
Déployer une application PHP Docker sur un serveur OVH, IONOS ou O2Switch
Dans cet exemple, nous allons voir comment déployer une application PHP sous Docker sur un serveur OVH, IONOS ou O2Switch, en utilisant FileZilla pour le transfert des fichiers et SSH pour les commandes Docker.
Avant de commencer, vous devez avoir :
✅ Un serveur VPS chez OVH, IONOS ou O2Switch (⚠️ Un hébergement mutualisé ne supporte pas Docker !)
✅ Docker installé sur votre serveur
✅ Un accès SSH et FTP au serveur
✅ FileZilla installé sur votre PC ou Mac ou un autre client FTP
Récupérer les accès FTP et SSH de votre serveur
Sur OVH
- Allez sur l’espace client OVH → Hébergements → FTP-SSH
- Notez l’adresse FTP, le port, le login et le mot de passe
Sur IONOS
- Connectez-vous à l’interface IONOS → Serveurs & Cloud
- Notez vos identifiants SSH et FTP
Sur O2Switch
- Connectez-vous au cPanel → Comptes FTP
- Notez l’adresse FTP, le port et les identifiants
Transférer l’application avec FileZilla
Connecter FileZilla à votre serveur
1️⃣ Ouvrez FileZilla
2️⃣ Allez dans Fichier → Gestionnaire de sites
3️⃣ Ajoutez une nouvelle connexion :
- Hôte : l’adresse FTP de votre serveur
- Identifiant : votre nom d’utilisateur FTP
- Mot de passe : votre mot de passe FTP
- Port : 21 (par défaut)
- Protocole : FTP – Protocole de transfert de fichiers
- Mode de chiffrement : « Utiliser FTP explicite sur TLS si disponible »
4️⃣ Cliquez sur « Connexion »
Envoyer les fichiers sur le serveur
Dans FileZilla, côté gauche (votre PC), sélectionnez votre dossier mon-app-php
.
📂 Glissez-déposez ce dossier dans le répertoire /home/utilisateur/
du serveur (côté droit).
✅ Les fichiers sont maintenant sur le serveur !
Se connecter en SSH et installer Docker
Se connecter au serveur via SSH
Sur votre PC, ouvrez un terminal et tapez :
ssh utilisateur@mon-serveur-ip
Saisissez votre mot de passe SSH.
Installer Docker sur le serveur
Si Docker n’est pas installé, exécutez :
sudo apt update && sudo apt install -y docker.io docker-compose
Vérifiez l’installation :
docker --version
Construire et exécuter l’application sur le serveur
Accédez au dossier de l’application :
cd mon-app-php
Puis, construisez l’image Docker :
docker build -t mon-app-php .
Lancez l’application sur le serveur :
docker run -d -p 80:80 --restart always mon-app-php
🔹 Explication :
-d
: Mode détaché (en arrière-plan)-p 80:80
: Expose le port 80 du serveur--restart always
: Relance le conteneur après un redémarrage
Votre application est maintenant accessible à l’adresse :
🔗 http://mon-serveur-ip
(Optionnel) Déploiement avec Docker Compose
Si vous souhaitez automatiser le lancement de l’application, utilisez Docker Compose.
Créer un fichier docker-compose.yml
version: "3.8"
services:
php-apache:
build: .
ports:
- "80:80"
volumes:
- .:/var/www/html
restart: always
Lancer l’application avec Compose
docker-compose up -d
(Optionnel) Associer un nom de domaine avec Nginx
Si vous avez un nom de domaine, vous pouvez configurer Nginx en tant que reverse proxy.
Installer Nginx et Certbot
sudo apt install nginx certbot python3-certbot-nginx -y
Configurer le VirtualHost
Créez un fichier de configuration Nginx :
sudo nano /etc/nginx/sites-available/mon-site
Ajoutez :
server {
listen 80;
server_name mon-domaine.com;
location / {
proxy_pass http://localhost:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Activez le site et redémarrez Nginx :
sudo ln -s /etc/nginx/sites-available/mon-site /etc/nginx/sites-enabled/
sudo systemctl restart nginx
Ajouter un certificat SSL (HTTPS)
sudo certbot --nginx -d mon-domaine.com
✅ Votre site est maintenant accessible avec HTTPS !
Mettre à Jour l’Application
Si vous mettez à jour votre projet, voici comment redéployer :
cd mon-app-php
docker build -t mon-app-php .
docker stop $(docker ps -q)
docker rm $(docker ps -aq)
docker run -d -p 80:80 --restart always mon-app-php
Vous avez maintenant déployé votre application PHP sous Docker sur un serveur OVH, IONOS ou O2Switch, en utilisant FileZilla et SSH !
💡 Pourquoi utiliser Docker pour le déploiement PHP ?
✔️ Facilité de migration entre serveurs
✔️ Isolation complète des dépendances
✔️ Scalabilité et simplicité d’administration
BONUS : Docker Compose, comment l’utiliser
Docker est un outil puissant, mais lorsqu’une application nécessite plusieurs services (comme PHP, MySQL et Nginx), gérer plusieurs conteneurs devient compliqué. C’est là que Docker Compose intervient !
Qu’est-ce que Docker Compose ?
Docker Compose est un outil qui permet de définir et exécuter des applications multi-conteneurs avec un simple fichier YAML (docker-compose.yml
).
✅ Il simplifie le déploiement et la gestion des conteneurs.
✅ Il permet de démarrer plusieurs services en une seule commande.
✅ Il facilite la mise à jour et la maintenance des applications.
👉 Exemple typique d’une application avec Docker Compose :
Une application PHP qui utilise Apache, une base de données MySQL, et un serveur phpMyAdmin pour l’administration.
À quoi sert Docker Compose ?
💡 Docker Compose est utile pour :
✔️ Créer et gérer plusieurs conteneurs en même temps
✔️ Éviter de taper des commandes Docker compliquées
✔️ Faciliter le partage et la mise en production d’un projet
✔️ Définir un environnement cohérent (même config en local et sur serveur)
📌 Sans Docker Compose :
Il faudrait lancer chaque conteneur individuellement avec docker run ...
, ce qui devient vite ingérable.
📌 Avec Docker Compose :
Un simple docker-compose up -d
suffit pour démarrer toute l’application.
Comment fonctionne Docker Compose ?
Docker Compose utilise un fichier YAML (docker-compose.yml
) où vous définissez tous les services nécessaires à votre application.
Exemple de docker-compose.yml
pour une application PHP avec MySQL
version: "3.8" # Version de Docker Compose
services:
php-apache:
image: php:8.1-apache
container_name: mon-php-container
ports:
- "8080:80"
volumes:
- .:/var/www/html
depends_on:
- mysql
mysql:
image: mysql:5.7
container_name: mon-mysql-container
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: mon_app
MYSQL_USER: user
MYSQL_PASSWORD: password
ports:
- "3306:3306"
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: mon-phpmyadmin-container
depends_on:
- mysql
ports:
- "8081:80"
environment:
PMA_HOST: mysql
Explication :
📌 services
: Définit les différents conteneurs (PHP, MySQL, phpMyAdmin).
📌 image
: Spécifie quelle image Docker utiliser.
📌 ports
: Associe un port de la machine à un port du conteneur.
📌 volumes
: Monte un dossier local dans le conteneur.
📌 depends_on
: Assure que MySQL démarre avant PHP.
📌 environment
: Définit des variables d’environnement (mot de passe MySQL, utilisateur, etc.).
Docker Compose : Commandes essentielles
🔹 Démarrer l’application
docker-compose up -d
Lance tous les services en arrière-plan (-d
= détaché).
🔹 Arrêter l’application
docker-compose down
Arrête et supprime les conteneurs.
🔹 Afficher les logs des conteneurs
docker-compose logs -f
Affiche les journaux en temps réel.
🔹 Voir les services en cours d’exécution
docker-compose ps
Liste les conteneurs actifs.
🔹 Recharger une application après modification
docker-compose up -d --build
Reconstruit les conteneurs et relance l’application.
Avantages de Docker Compose
✅ Facilité d’orchestration : Une seule commande pour tout lancer
✅ Configuration centralisée : Un seul fichier docker-compose.yml
✅ Consistance : Même environnement sur toutes les machines
✅ Scalabilité : Facile à déployer sur un serveur
Docker Compose simplifie la gestion des conteneurs en permettant de définir et de lancer une application complète en une seule commande.
👉 Utilisez Docker Compose pour :
✔️ Travailler sur un projet PHP/MySQL sans galérer avec l’installation
✔️ Déployer facilement votre application sur un serveur
✔️ Gérer plusieurs services sans perdre de temps
BONUS : Qu’est-ce qu’un fichier YAML ?
YAML (Yet Another Markup Language, ou YAML Ain’t Markup Language) est un format de sérialisation de données qui est facile à lire et écrire. Il est souvent utilisé pour configurer des applications, comme Docker Compose, Kubernetes, Ansible, CI/CD et bien d’autres outils.
Pourquoi utiliser YAML ?
✅ Lisibilité : Plus lisible que JSON ou XML
✅ Simplicité : Pas de balises compliquées comme en XML
✅ Indentation claire : Utilise l’espace blanc pour structurer les données
✅ Compatibilité : Utilisé par de nombreux outils
Exemple de comparaison :
📌 Fichier JSON
{
"nom": "Alban",
"age": 43,
"ville": "Troyes"
}
📌 Fichier YAML (équivalent)
nom: Alban
age: 43
ville: Troyes
👉 Plus clair et plus lisible !
Syntaxe YAML : Les bases
1️⃣ Clés et valeurs
Chaque ligne contient une clé suivie de :
et de sa valeur.
nom: Alban
age: 43
2️⃣ Indentation avec des espaces (pas de tabulation !)
YAML utilise l’indentation avec des espaces pour structurer les données (comme en Python).
utilisateur:
nom: Alban
age: 43
ville: Troyes
3️⃣ Listes (Tableaux)
Les listes sont définies avec -
devant chaque élément.
fruits:
- Pomme
- Banane
- Orange
4️⃣ Dictionnaires imbriqués (Objets dans objets)
personne:
nom: Alban
adresse:
rue: "12 rue des Lilas"
ville: Troyes
5️⃣ Valeurs multiples sur une seule ligne
serveurs: [web, base_de_donnees, cache]
🔹 Équivalent à :
serveurs:
- web
- base_de_donnees
- cache
6️⃣ Valeurs sur plusieurs lignes
Utilisez >
pour une seule ligne continue :
description: >
Ceci est une description
sur plusieurs lignes, mais
elle sera affichée en une seule ligne.
Utilisez |
pour conserver les retours à la ligne :
message: |
Ceci est un message
qui conserve les retours à la ligne.
Exemple concret avec Docker Compose
Voici un fichier docker-compose.yml
qui définit une application PHP avec MySQL.
version: "3.8"
services:
php:
image: php:8.1-apache
volumes:
- .:/var/www/html
ports:
- "8080:80"
mysql:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: mon_app
📌 Explication :
version
: Indique la version de Docker Compose.services
: Décrit les conteneurs (php
etmysql
).image
: Indique l’image Docker à utiliser.volumes
: Monte le dossier actuel (.
) dans/var/www/html
.ports
: Associe le port 8080 de la machine hôte au port 80 du conteneur.environment
: Définit des variables d’environnement pour MySQL.
✅ YAML est un format simple, lisible et puissant pour définir des configurations.
✅ Utilisé partout : Docker Compose, Kubernetes, Ansible, CI/CD, etc.
✅ Facile à apprendre : Basé sur l’indentation et les clés-valeurs.

- 🔥 Vendredi 25 Avril 2025 >19h00
HTML & SémantiqueStructure d'une page HTML