Créer un fichier docker-compose.yml simple
Dans cette étape, nous allons créer un fichier docker-compose.yml
simple. Avant de commencer, nous devons installer Docker Compose. Docker Compose est un outil permettant de définir et d'exécuter des applications Docker multi-conteneurs. Avec Compose, vous utilisez un fichier YAML pour configurer les services de votre application. Ensuite, avec une seule commande, vous créez et démarrez tous les services à partir de votre configuration.
Tout d'abord, installons Docker Compose. Nous allons télécharger le binaire Docker Compose et le rendre exécutable.
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Après l'installation, vous pouvez vérifier celle-ci en consultant la version de Docker Compose.
docker-compose --version
Vous devriez voir une sortie similaire à Docker Compose version v2.20.2
.
Maintenant, créons un répertoire pour notre projet et naviguons dedans.
mkdir my-docker-app
cd my-docker-app
Dans le répertoire my-docker-app
, nous allons créer un fichier nommé docker-compose.yml
. Ce fichier définira les services de notre application. Nous utiliserons l'éditeur nano
pour créer et modifier ce fichier.
nano docker-compose.yml
Dans l'éditeur nano
, collez le contenu suivant. Ce fichier docker-compose.yml
définit un seul service nommé web
qui utilise l'image nginx:latest
.
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "80:80"
Décomposons ce fichier :
version: '3.8'
spécifie la version du format de fichier Docker Compose.
services:
définit les services qui composent votre application.
web:
est le nom de notre service.
image: nginx:latest
spécifie l'image Docker à utiliser pour ce service. Dans ce cas, nous utilisons la dernière version de l'image Nginx.
ports:
mappe les ports entre l'hôte et le conteneur. "80:80"
mappe le port 80 de l'hôte vers le port 80 du conteneur.
Après avoir collé le contenu, enregistrez le fichier en appuyant sur Ctrl + X
, puis Y
, et enfin Entrée
.
Avant de démarrer le service, nous devons nous assurer que l'image nginx:latest
est disponible localement. Si ce n'est pas le cas, Docker Compose la téléchargera automatiquement lorsque vous démarrerez le service. Cependant, vous pouvez également télécharger l'image manuellement à l'aide de la commande docker pull
.
docker pull nginx:latest
Cette commande télécharge l'image nginx:latest
depuis Docker Hub.