Actualiser explications_dockercompose.md

This commit is contained in:
Lucile PEREIRA 2024-03-24 20:42:25 +01:00
parent 5ceefaf3a6
commit da1f83ffe9

View File

@ -1,8 +1,6 @@
# Fichier `docker-compose.yml`
## Syntaxe
### Structure
## Structure
```yml
services :
@ -28,7 +26,7 @@ networks :
```
> /!\ Ce ne sont pas des indentations mais des doubles espaces
### Définition des services
## Définition des services
On définit les services dans la partie `services`. On commence par le nom qu'on veut donner au service, puis on le définit.
```yml
@ -69,7 +67,7 @@ Pour déployer plusieurs instances d'un même service, on utilise :
replicas: 2
```
### Définition des réseaux
## Définition des réseaux
On définit les réseaux dans la partie `networks`. Elle est différente de la partie networks à l'intérieur de la définition d'un service, et n'est pas identée.
```yml
@ -79,7 +77,7 @@ networks:
```
On donne le nom puis la définition du réseau. Ici, pas besoin de définition
### Définition des volumes
## Définition des volumes
On définit les volumes dans la partie `volumes`. Elle est différente de la partie volumes à l'intérieur de la définition d'un service, et n'est pas identée.
```yml
@ -89,18 +87,20 @@ volumes:
```
On donne le nom puis la définition du réseau. Ici, pas besoin de définition car le volume est vide. On peut aussi ajouter {} après les : pour signifier que la volume est vide
## Utilisation
# Utilisation
On lance le fichier avec `docker compose up -d` (pas de tiret entre docker et compose !!!). Le `-d` sert a lancé l'activité en arrière-plan et donc à pouvoir utiliser le terminal.
Si le fichier utiliise un autre nom que `docker-compose.yml`, on utilise `docker compose -f nom-fichier.yml up -d`
Pour savoir si le docker compose a fonctionné, on vérifie que la commande `docker compose up` n'a pas fait d'erreur. On lance la commande `docker ps` et on vérifie que la nouvelle VM est affichée.
Pou se connecter à un conteneur (ici `php` du dossier `tp4`), on fait `docker exec -it tp4-php-1`
Pour se connecter à un conteneur (ici `php` du dossier `tp4`), on fait `docker exec -it tp4-php-1`
- `tp4` est le nom du dossier
- `php` est le nom du conteneur
- on met le nombre même si on n'a créé qu'un seul conteneur avec ce nom
Pour créer un réseau externe (qui regroupe plusieurs machines séparées), on utilise la commande `docker network create nom_network`.
Pour vérfier les réseaux présents, on fait `docker inspect`. Pour vérifier les réseaux présents dans un conteneur en particulier, on ajoute le nom du conteneur à la fin de la commande en suivant la grammaire dossier-fichier-numéro.
Pour supprimer tous les conteneurs, on fait `docker compose down`.