Actualiser explication_dockerfile.md

This commit is contained in:
Lucile PEREIRA 2024-03-26 23:54:32 +01:00
parent 7531dad012
commit 1223860fea

View File

@ -33,12 +33,12 @@ Tout dockerfile doit commencer par une ligne `FROM`. Pour trouver l'image, on va
>Il faut à tout prix éviter la version "latest" ou de prendre la version en haut de page, sans rien après le nom de l'image (ex: httpd) et qui correspond à la version latest.
### n
### Exécuter une commande
```dockerfile
RUN sed -i 's/Work Day Scheduler/Tom Moguljak/g' /usr/local/apache2/htdocs/index.html
```
T
Une ligne `RUN` permet d'exécuter une commande shell/bash au moment du `build`. Ici on a utilisé la commande `sed` : on cherche l'expression `Work Day Scheduler` et on remplace par `Tom Moguljak` dans le fichier `/usr/local/apache2/` de l'image.
### Ajouter une étiquette
@ -93,22 +93,24 @@ HEALTHCHECK --interval=1m --timeout=1s CMD curl --fail http://localhost:80/ || e
```
Une ligne `HEALTHCHECK` permet de faire des tests de survie. Ici le test a un intervale de 1 seconde.
### Autres commandes
## Utilisation
- `ADD` : copie des fichiers dans l'image (accepte les URL)
- `EXPOSE` : déclare les ports d'écoute du conteneur
- `VOLUME` : déclare lespoints de montage des volumes
- `USER` : définit l'utilisateur (groupe) qui exécutera l'image
- `WORKDIR` : définit le répertoire de travail
Pour créer l'image, on fait :
## Création : `docker build`
Pour créer l'image, on utilise la [commande `docker build`](https://docs.docker.com/reference/cli/docker/image/build/), au format
```shell
docker build -t nom:version répertoire
```
L'option `-t` est suivie du nom et de la version de l'image.
Exemple : on construit une image que l'on va nommée "mapremiereimage" en version 1.0 dans le répertoire de travail actuel (.)
```shell
docker build -t mapremiereimage:1.0 .
```
Pour lancer l'image, on fait :
```shell
docker run -d -p 8080:80 mapremiereimage:1.0 --name contimage
```
Pour arrêter l'image, on fait :
```shell
docker stop contimage
```
Pour voir le résultat, on va sur la page `localhost:8080` dans un navigateur.