Resources attached to the Road To DevOps tutorial https://blog.noobtoroot.xyz/road-to-devops/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

96 lines
4.6 KiB

# Formation Docker
## Programme
### Conteneurs
- Qu'est-ce qu'un conteneur ?
- Historique de la conteneurisation
- Différence entre conteneur et VM
- Technologies sous-jacentes
- Opérations de base sur les conteneurs
- Mise en réseau d'un conteneur
- Configuration d'une application conteneurisée
### Images de conteneurs
- Qu'est-ce qu'une image Docker ?
- DockerHub
- Création d'une image via docker commit
- Création d'une image via Dockerfile
- Bonnes pratiques pour la construction des images
- Note de couches pour le stockage des images
- Intérêt des tags pour le versionning des images
- Stockage et transport des images (Registry)
### Persistence des données
- Volumes Docker
- Bind mounts
### Gestion d'une stack applicative
- Déploiement d'une application multi-conteneurs avec docker-compose
### Orchestration
- Principes et intérêt d'un orchestrateur
- Panorama des principales solutions d'orchestration
- Fonctionnalités et principaux concepts de Docker Swarm
- Initialisation d'un cluster minimal
- Déploiement d'une stack applicative en utilisant les services Swarm
- Déploiement d'une stack applicative en utilisant une stack Swarm
- Mettre à l'échelle une application et répartir la charge
- Gestion des données sensibles
- Déployer un Registry local
- Installation et prise en main d’une interface graphique d’administration
## Slides
| Module | Format |
| :- | :- |
| 0. Introduction à la formation | [html](0.introduction-formation/index.html) |
| 1. Introduction aux conteneurs | [html](1.introduction-aux-conteneurs/index.html) - [markdown](1.introduction-aux-conteneurs/introduction-aux-conteneurs.md) - [pdf](https://gitlab.sii.fr/sii-ouest/trainings/docker/-/jobs/artifacts/master/raw/1.docker.introduction-aux-conteneurs.pdf?job=build-pdf-introduction-aux-conteneurs) |
| 2. Images de conteneurs | [html](2.images-de-conteneurs/index.html) - [markdown](2.images-de-conteneurs/images-de-conteneurs.md) - [pdf](https://gitlab.sii.fr/sii-ouest/trainings/docker/-/jobs/artifacts/master/raw/2.docker.images-de-conteneurs.pdf?job=build-pdf-images-de-conteneurs) |
| 3. Conteneurs : utilisation avancée | [html](3.conteneurs-utilisation-avancee/index.html) - [markdown](3.conteneurs-utilisation-avancee/conteneurs-utilisation-avancee.md) - [pdf](https://gitlab.sii.fr/sii-ouest/trainings/docker/-/jobs/artifacts/master/raw/3.docker.conteneurs-utilisation-avancee.pdf?job=build-pdf-conteneurs-utilisation-avancee) |
| 4. Docker Swarm | [html](5.swarm/index.html) - [markdown](5.swarm/swarm.md) - [pdf](https://gitlab.sii.fr/sii-ouest/trainings/docker/-/jobs/artifacts/master/raw/5.docker.swarm.pdf?job=build-pdf-swarm) |
| 5. Outils d'administration | [html](6.outils-administration/index.html) - [markdown](6.outils-administration/outils-administration.md) |
| 6. Monitoring de conteneurs | [html](7.monitoring-conteneurs/index.html) - [markdown](7.monitoring-conteneurs/monitoring-conteneurs.md) |
## Travaux pratiques
1. [Les bases](travaux-pratiques/slides/docker/tp-docker-introduction.html)
2. [Le réseau](travaux-pratiques/slides/docker/tp-network.html)
3. [Les images](travaux-pratiques/slides/docker/tp-images.html)
4. [Dockerfile](travaux-pratiques/slides/docker/tp-dockerfile.html)
5. [Les volumes](travaux-pratiques/slides/docker/tp-volumes.html)
6. [Application complète](travaux-pratiques/slides/docker/tp-web-db.html)
7. [Application complète avec Docker Compose](travaux-pratiques/slides/docker/tp-compose.html)
8. [Initialisation d'un cluster Swarm](travaux-pratiques/slides/swarm/tp-swarm-init.html)
9. Le réseau Overlay
10. [Déploiement d'applications - Services - Stacks](travaux-pratiques/slides/swarm/tp-swarm.html)
11. [Gestion des données sensibles](travaux-pratiques/slides/swarm/tp-secrets.html)
12. [Mise à jour d'une application](travaux-pratiques/slides/swarm/tp-rolling-update.html)
## Jouer les slides en local
1. Cloner le dépôt :
`git clone --recurse-submodules https://gitlab.sii.fr/sii-ouest/trainings/docker.git`
`cd docker`
2. Lancer le serveur :
`docker run --rm -p 127.0.0.1:8080:80 --name http -v "$(pwd)":/usr/local/apache2/htdocs:ro httpd`
3. Ouvrir la page dans le navigateur :
`firefox http://127.0.0.1:8080`
__Note concernant les utilisateurs de systèmes Windows__
* Des problèmes existent dans la gestion des liens symboliques avec Git, il faudra peut-être dupliquer le dossier `revealjs` à l'intérieur de chacun dossier contenant une présentation.
* Des problèmes de rendu peuvent exister sur les postes Windows, à cause des délimiteurs de fin de lignes. Il faut donc paramétrer `git` avec le paramètre `core.autocrlf` à la valeur `false`.