Prise en main de Docker
Le logiciel libre Docker permet de développer et lancer des applications facilement grâce à son système de conteneurisation. Cette formation vous aidera à comprendre et maîtriser en profondeur le fonctionnement de Docker et ses conteneurs, et vous apportera toutes les clés pour lancer des applications flexibles et performantes.
Objectifs
Ce cours a pour objectif de présenter les fondamentaux de la plateforme de containerisation d’applications Docker, très populaire au niveau de la communauté Devops et par les principaux acteurs du Cloud (Microsoft Azure, AWS, Google, IBM…)
Ce cours présente une orientation très pratique avec une immersion du stagiaire a toutes les sections avec des labs et des Quiz destinées à évaluer ses connaissances.
Programme
Section 1 : Introduction à Docker
- Docker c’est quoi ?
- Notions de base et rappel
- Containerisation vs Virtualisation
- Caractéristiques fondamentales
- Notion d’image et de conteneur
- Architecture
- Pourquoi Docker pour mes applications ?
- Petit QUIZ
Section 2 : Installation et Configuration de Docker
- Validation des pré requis logicielles et matérielles
- Installation de Docker Toolbox
- Checklist de la Toolbox Docker
- Docker Machine / Docker Client
- Images docker récupérées du Docker Registry et installation
- Type d’image docker
- Petit Quiz et Labs
Section 3 : Lancer ses premières applications containerisées
- Lancer Linux (Alpine, Ubuntu, …)
- Hello World
- Notion de Dockerfile et syntaxe
- Configurer les ports d’écoute et les exposer (port binding)
- Notion de volume : Définition et utilisation
- Builder et lancer son conteneur
- Example avec Tomcat et NGINX
- Petit QUIZ et Labs
Section 4 : Docker pour les développeurs JAVA
- Construire sa propre image docker : mode d’emploi
- Bonnes pratiques de construction
- Monitoring des logs du conteneur et inspection du conteneur
- Mode d’exécution du conteneur (premier plan, arrière-plan, détaché)
- Construire et lancer sa première application Java SE
- Pousser son image dans un registry
- Construire et déployer sa première application Web
- Construire et déployer sa première image avec Maven
- Quiz et Labs
Section 5 : Composition d’images avec Docker compose
- Notion d’application multi conteneurs
- Docker compose définition et mise en œuvre sur des exemples d’applications
- Quiz et labs
Section 6 : Section notion avancées avec le PAAS (Plate-Forme As a Service) Kubernetes plus d’autre « petites » choses encore …
- Notion de PAAS : Définition et scenarios de mise en œuvre avec Docker et Kubernetes
- Utilisation de Kubernetes avec Java
- Déploiement sur un cluster Kubernetes
- Notions avancées d’architecture micro service
- Installation et prise en main
- Quiz et Labs
Prérequis
- Une bonne connaissance de Linux et une connaissance du Shell
- Des notions de base de Java et du développement Web en général
Public
- Développeur d’application Java souhaitant comprendre l’écosystème base sur la solution de container Docker et de ses possibilités
- Administrateur système Linux
Objectifs
Ce cours a pour objectif de présenter les fondamentaux de la plateforme de containerisation d’applications Docker, très populaire au niveau de la communauté Devops et par les principaux acteurs du Cloud (Microsoft Azure, AWS, Google, IBM…)
Ce cours présente une orientation très pratique avec une immersion du stagiaire a toutes les sections avec des labs et des Quiz destinées à évaluer ses connaissances.
Programme
Section 1 : Introduction à Docker
- Docker c’est quoi ?
- Notions de base et rappel
- Containerisation vs Virtualisation
- Caractéristiques fondamentales
- Notion d’image et de conteneur
- Architecture
- Pourquoi Docker pour mes applications ?
- Petit QUIZ
Section 2 : Installation et Configuration de Docker
- Validation des pré requis logicielles et matérielles
- Installation de Docker Toolbox
- Checklist de la Toolbox Docker
- Docker Machine / Docker Client
- Images docker récupérées du Docker Registry et installation
- Type d’image docker
- Petit Quiz et Labs
Section 3 : Lancer ses premières applications containerisées
- Lancer Linux (Alpine, Ubuntu, …)
- Hello World
- Notion de Dockerfile et syntaxe
- Configurer les ports d’écoute et les exposer (port binding)
- Notion de volume : Définition et utilisation
- Builder et lancer son conteneur
- Example avec Tomcat et NGINX
- Petit QUIZ et Labs
Section 4 : Docker pour les développeurs JAVA
- Construire sa propre image docker : mode d’emploi
- Bonnes pratiques de construction
- Monitoring des logs du conteneur et inspection du conteneur
- Mode d’exécution du conteneur (premier plan, arrière-plan, détaché)
- Construire et lancer sa première application Java SE
- Pousser son image dans un registry
- Construire et déployer sa première application Web
- Construire et déployer sa première image avec Maven
- Quiz et Labs
Section 5 : Composition d’images avec Docker compose
- Notion d’application multi conteneurs
- Docker compose définition et mise en œuvre sur des exemples d’applications
- Quiz et labs
Section 6 : Section notion avancées avec le PAAS (Plate-Forme As a Service) Kubernetes plus d’autre « petites » choses encore …
- Notion de PAAS : Définition et scenarios de mise en œuvre avec Docker et Kubernetes
- Utilisation de Kubernetes avec Java
- Déploiement sur un cluster Kubernetes
- Notions avancées d’architecture micro service
- Installation et prise en main
- Quiz et Labs
Prérequis
- Une bonne connaissance de Linux et une connaissance du Shell
- Des notions de base de Java et du développement Web en général
Public
- Développeur d’application Java souhaitant comprendre l’écosystème base sur la solution de container Docker et de ses possibilités
- Administrateur système Linux