Actualiser explications_dockercompose.md
This commit is contained in:
parent
5ceefaf3a6
commit
da1f83ffe9
@ -1,8 +1,6 @@
|
|||||||
# Fichier `docker-compose.yml`
|
# Fichier `docker-compose.yml`
|
||||||
|
|
||||||
## Syntaxe
|
## Structure
|
||||||
|
|
||||||
### Structure
|
|
||||||
|
|
||||||
```yml
|
```yml
|
||||||
services :
|
services :
|
||||||
@ -28,7 +26,7 @@ networks :
|
|||||||
```
|
```
|
||||||
> /!\ Ce ne sont pas des indentations mais des doubles espaces
|
> /!\ 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.
|
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
|
```yml
|
||||||
@ -69,7 +67,7 @@ Pour déployer plusieurs instances d'un même service, on utilise :
|
|||||||
replicas: 2
|
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.
|
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
|
```yml
|
||||||
@ -79,7 +77,7 @@ networks:
|
|||||||
```
|
```
|
||||||
On donne le nom puis la définition du réseau. Ici, pas besoin de définition
|
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.
|
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
|
```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
|
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.
|
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`
|
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.
|
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
|
- `tp4` est le nom du dossier
|
||||||
- `php` est le nom du conteneur
|
- `php` est le nom du conteneur
|
||||||
- on met le nombre même si on n'a créé qu'un seul conteneur avec ce nom
|
- 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 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`.
|
Pour supprimer tous les conteneurs, on fait `docker compose down`.
|
||||||
|
Loading…
Reference in New Issue
Block a user