Docker

Gérez efficacement des conteneurs avec Podman

Objectifs de la formation

  • Comprendre l’architecture de Podman et ses différences avec Docker.
  • Maîtriser les commandes Podman pour la gestion des images, conteneurs, pods et volumes.
  • Savoir construire des images de conteneurs efficaces et sécurisées.
  • Déployer et gérer des conteneurs Podman en environnement local et sur AWS.
  • Comprendre et utiliser la notion de Pods avec Podman
  • Appliquer les meilleures pratiques pour une utilisation opérationnelle de Podman.


Programme de la formation

Introduction

  • Rappel des concepts fondamentaux de la conteneurisation.
  • Qu’est-ce que Podman ? Histoire et philosophie.
  • Architecture sans daemon : avantages (sécurité, simplicité, intégration).
  • Comparaison entre Podman et Docker : quelles différences ?
  • Qu’est-ce qui distingue Podman en termes de sécurité et de gestion ?

Travaux pratiques : Installation et configuration de Podman sous Linux (apt, dnf, pacman), Windows et macOS (présentation de Podman machine et de Podman Desktop). Configuration de base : containers.conf, registries.conf, storage.conf, Configuration de l’environnement Rootless (utilisateur non-root).

Gestion des conteneurs avec Podman

  • Création et gestion de conteneurs simples avec Podman.
  • Comment utiliser les commandes de Podman pour lancer, arrêter, et supprimer des conteneurs ((podman stop, podman start, podman rm).
  • Exploration des logs et gestion des processus dans les conteneurs.
  • Sauvegarde et restauration de conteneurs avec Podman.

Travaux pratiques : création d’un conteneur simple. Les participants lanceront, arrêteront et supprimeront des conteneurs, tout en explorant les logs générés

Gestion des images et des registres

  • Recherche et téléchargement d’images (podman search, podman pull).
  • Listing et inspection des images (podman images, podman inspect).
  • Suppression d’images (podman rmi).
  • Construction d’images avec Podman et Buildah : Introduction au Dockerfile/Containerfile.
  • Meilleures pratiques pour la construction d’images (multi-stage builds, optimisations).

Travaux pratiques : Création d’un Dockerfile simple, construction d’une image personnalisée.

Gestion des Volumes

  • Types de volumes : bind mounts, named volumes.
  • Création et suppression de volumes nommés (podman volume create, podman volume rm).
  • Partage de données entre conteneurs.
  • Sauvegarde et restauration de données de volumes.

Travaux pratiques : Mise en place d’une base de données dans un conteneur avec persistance des données via un volume.

Gestion des Réseaux

  • Types de réseaux Podman : bridge par défaut, host, none.
  • Création de réseaux personnalisés (podman network create).
  • Attachement de conteneurs à des réseaux spécifiques.
  • DNS et découverte de services entre conteneurs sur le même réseau.

Travaux pratiques : Déployer une application multi-conteneur sur un réseau Podman personnalisé.

Les Pods

  • Qu’est-ce qu’un Pod dans Podman et pourquoi les utiliser ?
  • Création et gestion de Pods pour organiser les conteneurs.
  • Sécurisation des communications entre conteneurs dans un Pod.

Travaux pratiques : Créer un Pod avec deux conteneurs partageant le même réseau et volume.

Les plugins

  • Qu’est-ce qu’un plugin Podman
  • Les différents types de plugins
  • Network Plugins (CNI)
  • Volume Plugins (CSI)
  • Autres plugins

Travaux pratiques : installer et configurer des plugins CNI/CSI.

Intégration avec Systemd

  • Génération de services Systemd à partir de conteneurs et de Pods
  • Gestion des services Podman avec Systemd (démarrage automatique, supervision…)
  • Bonnes pratiques pour les déploiements persistants.

Travaux pratiques : Automatiser le démarrage d’un Pod via un service Systemd.

Sécurité avec Podman (vue d’ensemble)

  • Conteneurs Rootless : Approfondissement des mécanismes de sécurité.
  • SELinux et AppArmor : Rôles et configuration avec Podman.
  • Limitation des ressources (CPU, mémoire) : podman run –cpus, -memory.
  • Principes de moindre privilège pour les conteneurs.
  • Scanning de vulnérabilités des images (outils externes).

Gestion des Registres de Conteneurs

  • Authentification aux registres privés (podman login).
  • Utilisation des registres distants : push et pull d’images.
  • Comment sécuriser les connexions aux registres de conteneurs ?
  • Tagging et poussée d’images vers des registres (podman tag, podman push).
  • Présentation des registres AWS : ECR (Elastic Container Registry).

Travaux pratiques : Authentification à ECR, tagger et pousser une image Podman vers ECR.

Déploiement de Conteneurs Podman sur AWS

  • Stratégies de déploiement
    • AWS EC2 avec Podman : Exécution directe de Podman sur une instance EC2.
    • Utilisation d’images Podman avec ECS (Elastic Container Service).
    • Préparation de l’environnement EC2 (AMI, User Data, Security Groups).
  • Automatisation du déploiement avec des scripts Bash ou des outils IaC (Terraform, CloudFormation – concepts).

Travaux pratiques : Lancer une instance EC2 Linux, installer Podman, puis tirer et exécuter une image depuis ECR sur cette instance.

MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS

Modalités pédagogiques :

  • Évaluation des besoins et du profil des participants.
  • Apport théorique et méthodologique : séquences pédagogiques regroupées en différents modules.
  • Contenus des programmes adaptés en fonction des besoins identifiés pendant la formation.
  • Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de travaux pratiques, étude de cas et mise en situation.
  • Méthodes expositive, active et participative.
  • Réflexion et échanges sur cas pratiques.
  • Retours d'expériences.
  • Corrections appropriées et contrôles des connaissances à chaque étape, fonction du rythme de l’apprenant mais également des exigences requises au titre de la formation souscrite.

Éléments matériels :

  • Mise à disposition des outils nécessaires au bon déroulement des travaux pratiques.
  • Support de cours au format numérique projeté sur écran et transmis au participant en fin de la formation.

Référent pédagogique et formateur :

  • Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation.
  • Le bon déroulement est assuré par le formateur désigné par l’organisme de formation.
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
  • Feuilles de présences signées des participants et du formateur par demi-journée.
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Please login to get access to the quiz
Docker, fonctionnalités avancées (Prev Lesson)
Back to Docker
Public

Ingénieurs DevOps, Administrateurs systèmes et réseaux

Pré-requis

Compréhension de base de la ligne de commande Linux. Connaissance fondamentale des concepts de conteneurisation. Une expérience avec une technologie de conteneur (Docker, LXC, etc.) est un plus mais pas obligatoire.

Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en effectuant le test disponible en bas de cette page.

Lieu de formation

Intra-entreprise/à distance

Dates ou période

À définir. Nous consulter

Tarif

Sur devis. Merci de nous contacter

Modalités

Pour s’inscrire à notre formation, veuillez nous contacter par mail ou téléphone.

Démarrage de la formation sous deux semaines (délai indicatif).

Nous contacer
Informations complémentaires

Pour toute réclamation, aléas ou difficultés rencontrés pendant la formation, veuillez prendre contact avec notre organisme par téléphone ou par e-mail. Nous mettrons tout en œuvre pour trouver une solution adapter.

Formation synchrone, réalisée à distance en visioconférence via l’application Microsoft Teams ou en présentiel dans les locaux du client.