# Mise à jours

## Commandes

```bash
# arrête et enlève le container
docker compose down


# récupère la dernière image comme indiqué dans le docker-compose. yml
# Souvent `latest`
docker compose pull


# recrée le container d'après la dernière image locale (qu'on a avec pull) 
# -d/--detach permet de lancer le service en arrière plan. 
docker compose up -d
```
## Procéssus

Nous avons pour l'instant identifier deux façons de mettre à jours un container docker: 

1. `down` > `pull` > `up -d`
2. `pull` > `up -d`

La différence notable entre les deux approches est que la deuxième version permet d'éviter de recréer les contenaires pas mis à jour tandis que la première approche retire tout et repart de zéro, guardant bien sur les data qui étaient dans les volumes.

**Nous utilisons la deuxième méthode.**

### Détails sur `up`

Cette commande recréer le container sous plusieurs conditions : 

1. Une versions plus récente de l'image
2. Des changements au fichiers de configurations (image/tag, networks, entrypoints, env variables, port mappings, volume mounts, restart policies et labels)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9