À l’issue de la formation, l’apprenant saura :
- Utiliser Docker avec un projet Java (Spring Boot)
- Conteneuriser une application Java
- Gérer les réseaux, volumes et logs Docker
- Mettre en place une CI/CD avec tests et déploiement automatisé
- Configurer un VPS Linux sécurisé pour héberger l’application
- Déployer et superviser un projet en production
- VM vs Conteneur
- Architecture Docker
- Daemon, client, images, conteneurs, volumes, réseaux
- Docker Engine (Linux)
- Docker Desktop (Mac/Windows)
- Vérifications (
docker info,docker version)
docker run,ps,stop,rm,exec,logs
docker pull,docker build,docker tag,rmi
- Exécuter une image Java officielle
- Containeriser une application HelloWorld
- Application JAR (
FROM eclipse-temurin,COPY,CMD) - Structure et bonnes pratiques
- Séparer build (Maven/Gradle) et exécution
- Réduire le contexte de build
- JUnit, Mockito, Spring Test
- Script Maven/Gradle
- Étapes : test → build → push image
- Dockerfile +
.github/workflows/docker-deploy.yml - Variables de secrets (Docker Hub, SSH...)
- Services, volumes, réseaux
- API REST Java + BDD persistante
.env+docker-compose.yml
- Création utilisateur
- Configuration SSH (clé privée, port, fail2ban, ufw)
docker,docker-compose,certbot,nginx
scpougit clone+docker-compose up -d
- Test → Build → Push → Déploiement
appleboy/ssh-action(GitHub)- GitLab Runner (auto-hébergé possible)
- Docker Hub, GitHub Container Registry, GitLab Registry
- Registry privé auto-hébergé (
registry:2, sécurisé par NGINX)
docker login,docker tag,docker push
- Pas de root, user dédié, pas de
latest,HEALTHCHECK
- Trivy, Docker Scout
- TLS/HTTPS, UFW, certificats, authentification forte
docker logs, redirection vers fichiers, syslog
docker stats,prometheus,grafana(optionnel)
- Développer une API REST Java Spring Boot
- Dockeriser l'application + BDD
- Écrire des tests unitaires
- Mettre en place une pipeline CI/CD complète
- Déployer sur un VPS via SSH automatique
- Suivi du build et des logs
Dockerfile+docker-compose.yml- Pipeline CI/CD complet
- Script de configuration du VPS
- Rapport d’audit de sécurité et de supervision
- Schéma d’architecture et documentation technique