5 premiers cours
This commit is contained in:
190
04_docker.md
Normal file
190
04_docker.md
Normal file
@@ -0,0 +1,190 @@
|
||||
---
|
||||
marp: true
|
||||
theme: default
|
||||
paginate: true
|
||||
backgroundColor: #fff
|
||||
footer: 'Conteneurisation - Partie 1 - 2025'
|
||||
style: |
|
||||
section {
|
||||
font-family: 'Arial', sans-serif;
|
||||
}
|
||||
h1 {
|
||||
color: #2496ed;
|
||||
}
|
||||
h2 {
|
||||
color: #384c54;
|
||||
}
|
||||
---
|
||||
|
||||
# 3. La conteneurisation
|
||||
## Cas de docker
|
||||
|
||||
---
|
||||
|
||||
# Conteneur
|
||||
|
||||
* Environnement isolé
|
||||
* Système hôte
|
||||
* Fonctions de configuration
|
||||
* Dépend de l'hôte/kernel
|
||||
|
||||
---
|
||||
|
||||
# Les types de conteneurs
|
||||
|
||||
* **System :**
|
||||
* simule une **séquence de boot** complète avec
|
||||
un **init process** ainsi que **plusieurs processus** (LXC,
|
||||
OpenVZ).
|
||||
|
||||
* **Process :**
|
||||
* un conteneur **exécute un ou plusieurs processus** directement, en fonction de l'application conteneurisée (Docker, Rkt).
|
||||
|
||||
---
|
||||
|
||||
# Notion importantes
|
||||
|
||||
* Cgroups (Control Groups)
|
||||
* Namespaces
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
# Les images
|
||||
|
||||
* Point de départ
|
||||
* Archives / Snapshot
|
||||
* On ne refait pas la roue
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
# Le registre
|
||||
|
||||
* Distributeur d’images
|
||||
* Sécurité ?
|
||||
* Docker Hub
|
||||
* Exemple :
|
||||
* ECS (AWS)
|
||||
* Artifact Registry (Google Cloud)
|
||||
|
||||
---
|
||||
|
||||
# L’empilement des couches (Layers)
|
||||
|
||||
* Structure en couche
|
||||
* Partage des couches
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
# Cycle de Vie des Conteneurs Docker
|
||||
|
||||
- Introduction au cycle de vie des conteneurs
|
||||
- États possibles et transitions
|
||||
- Commandes de gestion
|
||||

|
||||
|
||||
|
||||
---
|
||||
|
||||
# États des Conteneurs Docker
|
||||
|
||||
**Created**
|
||||
- Conteneur créé mais pas encore démarré
|
||||
- `docker create`
|
||||
|
||||
**Running**
|
||||
- Conteneur en cours d'exécution
|
||||
- `docker run`, `docker start`
|
||||
- Processus actifs à l'intérieur
|
||||
|
||||
|
||||
---
|
||||
|
||||
# États des Conteneurs Docker
|
||||
|
||||
**Paused**
|
||||
- Conteneur en pause (processus gelés)
|
||||
- `docker pause`, `docker unpause`
|
||||
|
||||
**Stopped**
|
||||
- Conteneur arrêté (processus terminés)
|
||||
- `docker stop`, `docker kill`
|
||||
|
||||
---
|
||||
|
||||
# Commandes Principales de Gestion
|
||||
|
||||
**Création et Démarrage**
|
||||
```bash
|
||||
docker run # Crée et démarre un conteneur
|
||||
docker start # Démarre un conteneur existant
|
||||
```
|
||||
|
||||
**Gestion des États**
|
||||
```bash
|
||||
docker pause # Met en pause un conteneur
|
||||
docker unpause # Reprend l'exécution
|
||||
docker stop # Arrête proprement (SIGTERM)
|
||||
docker kill # Arrête immédiatement (SIGKILL)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# Commandes Principales de Gestion
|
||||
|
||||
**Suppression**
|
||||
```bash
|
||||
docker rm # Supprime un conteneur arrêté
|
||||
docker rm -f # Force la suppression d'un conteneur
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# Inspection et Débug
|
||||
|
||||
**Commandes utiles**
|
||||
```bash
|
||||
docker ps # Liste les conteneurs en cours d'exécution
|
||||
docker ps -a # Liste tous les conteneurs
|
||||
docker logs # Affiche les logs du conteneur
|
||||
docker exec # Exécute une commande dans un conteneur
|
||||
docker stats # Affiche les statistiques d'utilisation
|
||||
```
|
||||
|
||||
**Points importants**
|
||||
- Un conteneur peut être redémarré (`docker restart`)
|
||||
- Les données sont persistantes entre les redémarrages
|
||||
- Les volumes permettent de persister les données même après suppression
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
# TP1
|
||||
|
||||
---
|
||||
|
||||
# Le stockage
|
||||
|
||||
* AUFS
|
||||
* DeviceMapper
|
||||
* OverlayFS
|
||||
* Plugins
|
||||

|
||||
|
||||
---
|
||||
|
||||
# Les volumes
|
||||
|
||||
* Persistance des données
|
||||
* Indépendance vis à vis des conteneurs/layers
|
||||
* Deux types de volume:
|
||||
* Conteneur : data conteneur
|
||||
* Hôte : dossier
|
||||
|
||||

|
||||
Reference in New Issue
Block a user