Archived
123 lines
2.6 KiB
Markdown
123 lines
2.6 KiB
Markdown
## Sommaire
|
|
- Introduction à la conteneurisation
|
|
- Docker
|
|
- Principes clés
|
|
- Point de vue sysadmin
|
|
- Point de vue développeur
|
|
- Point de vue DevOps
|
|
|
|
|
|
|
|
## Nathan Tien You
|
|
- Ingénieur spécialité informatique
|
|
- Développeur fullstack
|
|
- Home Server :
|
|
- Proxmox
|
|
- Docker
|
|
- Gitea actions
|
|
- Amateur de jeux de deckbuilding
|
|
|
|
|
|
|
|
## Problématiques liées à la virtualisation
|
|
- Gourmand (Mémoire, processeur, disque dur)
|
|
- Installation lourde
|
|
- Mises à jour et maintenance
|
|
- Système d'exploitation
|
|
- Outils de supervision
|
|
- Dépendances / prérequis
|
|
|
|
|
|
|
|
## Différents types de conteneurisation
|
|
- Conteneurs Processus
|
|
- Docker
|
|
- Podman
|
|
- Conteneurs Machine
|
|
- LXC
|
|
- LXD
|
|
|
|
|
|
|
|
## Virtualisation du service
|
|
\
|
|
<sup>source : [Gitlab](https://gitlab.com)</sup>
|
|
|
|
|
|
|
|
## Infrastructure as code
|
|
- Automatisation
|
|
- Fiabilité
|
|
- Efficacité
|
|
- Contrôle des versions
|
|
|
|
|
|
|
|
|
|
## Conteneurs
|
|
<ul>
|
|
<li>Ressources (processeur, ram)</li>
|
|
<li>Stockage</li>
|
|
<li>Réseau</li>
|
|
</ul>
|
|
<object data-id="Container.svg" data="./images/Container.drawio.svg" type="image/svg+xml"></object>
|
|
<!-- .slide: data-auto-animate -->
|
|
|
|
|
|
```bash [1-6|1-2|3|4|5|6]
|
|
docker run \
|
|
-it --rm \
|
|
-v /tmp:/app \
|
|
-p 8000:8000 \
|
|
python:latest \
|
|
python -m http.server --directory /app
|
|
```
|
|
<object data-id="Container.svg" data="./images/Container.drawio.svg" type="image/svg+xml"></object>
|
|
<!-- .slide: data-auto-animate -->
|
|
|
|
|
|

|
|
<object data-id="Container.svg" data="./images/Container.drawio.svg" type="image/svg+xml"></object>
|
|
<!-- .slide: data-auto-animate -->
|
|
|
|
|
|
<!-- .slide: data-background-video="./images/run.mp4" data-background-size="contain" -->
|
|
|
|
|
|
|
|
## Images
|
|
```Docker [1-11|1-2|3-5|6-9|10-11]
|
|
FROM python:alpine3.19
|
|
WORKDIR /app
|
|
|
|
COPY files/* ./
|
|
EXPOSE 8000
|
|
CMD ["python3", "-m", "http.server"]
|
|
```
|
|

|
|
```bash
|
|
docker buildx build . -t demo:latest
|
|
```
|
|
|
|
|
|
<!-- .slide: data-background-video="./images/run.mp4" data-background-size="contain" -->
|
|
|
|
|
|
|
|
## Orchestration
|
|
- Automatisation du déploiement
|
|
- Horizontal Scaling
|
|
- Nombreuses platformes
|
|
- Kubernetes
|
|
- Docker Compose
|
|
- OpenShift
|
|
|
|
|
|
|
|
## Docker compose
|
|
<object data-id="Compose.svg" data="./images/Compose.drawio.svg" type="image/svg+xml"></object>
|
|
|
|
|
|
<object data-id="Compose.svg" data="./images/Compose.drawio.svg" type="image/svg+xml"></object>
|
|
```yaml
|
|
``` |