quickstart5 min de lecture

Déployer sa première application sur Kubernetes en 30 minutes

SFEIR Institute

Points clés

  • Les rolling updates Kubernetes garantissent zéro downtime lors des mises à jour
  • 'Un déploiement Kubernetes nécessite: un fichier YAML, kubectl et un cluster'
  • Premier déploiement réalisable en 30 minutes sans expérience préalable

Un déploiement Kubernetes est le processus de distribution et d'exécution d'une application conteneurisée sur un cluster Kubernetes, où le système orchestre automatiquement la création des pods, la gestion du réseau et la haute disponibilité. Déployer une application Kubernetes pour un débutant consiste à créer un fichier YAML décrivant l'état souhaité, puis à l'appliquer via kubectl apply.

TL;DR : Ce quickstart vous guide pas à pas pour réaliser votre premier déploiement Kubernetes en moins de 30 minutes. Vous créerez un cluster local, déploierez une application web, l'exposerez via un Service, et vérifierez son bon fonctionnement. Aucune expérience préalable requise.

Les développeurs qui veulent maîtriser ces compétences suivent la formation LFD459 Kubernetes pour les développeurs d'applications.

Pourquoi apprendre à déployer une application Kubernetes en tant que débutant ?

Selon le CNCF Annual Survey 2025, 82% des utilisateurs de conteneurs exécutent Kubernetes en production, contre 66% en 2023. Cette adoption massive signifie que tout développeur Full-Stack doit maîtriser les bases du déploiement.

À retenir : Kubernetes n'est plus optionnel. C'est devenu le standard de facto pour orchestrer les applications cloud-native.

Pour approfondir le développement applications Kubernetes, commencez par ce quickstart pratique.

Quels sont les prérequis pour ce premier déploiement Kubernetes ?

Avant de commencer, vérifiez que vous disposez de :

ÉlémentVersion minimaleVérification
Docker Desktop4.25+docker --version
kubectl1.28+kubectl version --client
Minikube ou Kind1.32+ / 0.20+minikube version
TerminalBash/Zsh/PowerShellN/A

Installez kubectl si ce n'est pas fait :

# macOS
brew install kubectl

# Linux
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl && sudo mv kubectl /usr/local/bin/

# Windows (PowerShell admin)
choco install kubernetes-cli

Consultez notre guide des commandes kubectl essentielles pour développeurs pour maîtriser l'outil CLI.

Étape 1 : Comment créer un cluster Kubernetes local ?

Lancez Minikube pour démarrer un cluster mono-nœud sur votre machine :

# Démarrer le cluster avec 2 CPUs et 4GB RAM
minikube start --cpus=2 --memory=4096

# Vérifier le statut
minikube status

Résultat attendu :

minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
À retenir : Minikube crée un environnement Kubernetes complet en local, idéal pour l'apprentissage et les tests.

Pour comprendre l'architecture sous-jacente, explorez notre section sur l'administration cluster Kubernetes.

Étape 2 : Comment écrire un manifeste de Deployment ?

Un Deployment est un objet Kubernetes décrivant l'état souhaité de votre application. Créez le fichier app-deployment.yaml :

apiVersion: apps/v1
kind: Deployment
metadata:
  name: hello-kubernetes
  labels:
    app: hello-kubernetes
spec:
  replicas: 3
  selector:
    matchLabels:
      app: hello-kubernetes
  template:
    metadata:
      labels:
        app: hello-kubernetes
    spec:
      containers:
      - name: hello-kubernetes
        image: paulbouwer/hello-kubernetes:1.10
        ports:
        - containerPort: 8080
        resources:
          requests:
            memory: "64Mi"
            cpu: "100m"
          limits:
            memory: "128Mi"
            cpu: "200m"

Ce manifeste définit :

  • 3 réplicas pour la haute disponibilité
  • Limites de ressources pour éviter la surconsommation
  • Labels pour le routage des Services

Pour approfondir la conception, consultez le guide du design d'applications conteneurisées pour Kubernetes.

Étape 3 : Comment appliquer le déploiement avec kubectl apply ?

La commande kubectl apply est le cœur du workflow déclaratif Kubernetes. Déployez votre application :

# Appliquer le manifeste
kubectl apply -f app-deployment.yaml

# Vérifier le déploiement
kubectl get deployments

# Observer la création des pods
kubectl get pods -w

Sortie typique :

NAME               READY   UP-TO-DATE   AVAILABLE   AGE
hello-kubernetes   3/3     3            3           45s

Selon The Enterprisers Project : « Anybody can learn Kubernetes. With abundant documentation and development tools available online, teaching yourself Kubernetes is very much within reach. »

À retenir : La commande kubectl apply -f est idempotente. Relancez-la autant de fois que nécessaire sans effet de bord.

Étape 4 : Comment exposer l'application via un Service ?

Un Service Kubernetes expose vos pods au réseau. Créez app-service.yaml :

apiVersion: v1
kind: Service
metadata:
  name: hello-kubernetes-svc
spec:
  type: NodePort
  selector:
    app: hello-kubernetes
  ports:
  - port: 80
    targetPort: 8080
    nodePort: 30080

Appliquez et testez :

# Créer le Service
kubectl apply -f app-service.yaml

# Obtenir l'URL d'accès (Minikube)
minikube service hello-kubernetes-svc --url

Vous obtiendrez une URL locale (ex: http://192.168.49.2:30080) pour accéder à votre application.

Pour les architectures plus complexes, explorez l'architecture microservices sur Kubernetes.

Étape 5 : Comment vérifier et debugger le déploiement ?

Commandes de diagnostic essentielles :

# Détails complets du déploiement
kubectl describe deployment hello-kubernetes

# Logs d'un pod spécifique
kubectl logs -l app=hello-kubernetes --tail=50

# Exécuter un shell dans un pod
kubectl exec -it $(kubectl get pod -l app=hello-kubernetes -o jsonpath='{.items[0].metadata.name}') -- /bin/sh

# Événements récents du cluster
kubectl get events --sort-by='.lastTimestamp'

Selon le rapport Cloud Native Now, les équipes IT passent en moyenne 34 jours de travail par an à résoudre des problèmes Kubernetes. Maîtriser ces commandes de debug réduit drastiquement ce temps.

Étape 6 : Comment effectuer une mise à jour rolling update ?

Kubernetes permet des mises à jour sans interruption. Modifiez l'image :

# Mettre à jour l'image du conteneur
kubectl set image deployment/hello-kubernetes hello-kubernetes=paulbouwer/hello-kubernetes:1.11

# Observer le rolling update
kubectl rollout status deployment/hello-kubernetes

# Historique des révisions
kubectl rollout history deployment/hello-kubernetes

En cas de problème, rollback instantané :

kubectl rollout undo deployment/hello-kubernetes
À retenir : Les rolling updates garantissent zéro downtime. Kubernetes remplace progressivement les anciens pods par les nouveaux.

Cette approche déclarative fait partie des patterns de développement cloud-native pour Kubernetes.

Étape 7 : Comment nettoyer les ressources ?

Supprimez proprement vos ressources de test :

# Supprimer le déploiement et le service
kubectl delete -f app-deployment.yaml
kubectl delete -f app-service.yaml

# Vérifier la suppression
kubectl get all

# Arrêter Minikube (optionnel)
minikube stop

Quelle est la prochaine étape après ce premier déploiement ?

Vous venez de réaliser votre premier déploiement Kubernetes avec succès. Selon TealHQ : « Don't let your knowledge remain theoretical. Set up a real Kubernetes environment to solidify your skills. »

Pour aller plus loin :

  1. Maîtrisez les APIs : Consultez notre guide pour maîtriser les APIs Kubernetes pour le développement d'applications
  2. Explorez le catalogue complet : Découvrez notre Formation Kubernetes : Guide Complet
  3. Demandez un accompagnement : Obtenez votre devis formation Kubernetes

Le marché Kubernetes représente 2,57 milliards USD en 2025 et atteindra 8,41 milliards USD en 2031 selon Mordor Intelligence, avec un CAGR de 21,85%. Investir dans ces compétences maintenant positionne votre carrière pour la décennie à venir.

Passez au niveau supérieur avec SFEIR Institute

Ce quickstart vous a donné les bases du déploiement Kubernetes. Pour devenir un développeur Full-Stack certifié capable de concevoir des applications cloud-native robustes :

Contactez nos conseillers pour construire votre parcours de formation personnalisé.