Mettez en pratique vos compétences dans la console Google Cloud
Instructions et exigences de configuration de l'atelier
Protégez votre compte et votre progression. Utilisez toujours une fenêtre de navigation privée et les identifiants de l'atelier pour exécuter cet atelier.
Développement d'applications : déployer l'application dans Kubernetes Engine – Python
Ce contenu n'est pas encore optimisé pour les appareils mobiles.
Pour une expérience optimale, veuillez accéder à notre site sur un ordinateur de bureau en utilisant un lien envoyé par e-mail.
Présentation
Google Kubernetes Engine est un environnement géré grâce auquel vous pouvez déployer, gérer et faire évoluer vos applications en conteneur à l'aide de l'infrastructure Google. L'environnement de Kubernetes Engine comprend plusieurs machines (en particulier, les instances de Google Compute Engine) regroupées pour former un cluster.
Les mécanismes de Kubernetes vous permettent d'interagir avec votre cluster. Grâce aux commandes et ressources Kubernetes, vous pouvez déployer et gérer vos applications, effectuer des tâches d'administration, définir des stratégies et surveiller l'état de vos charges de travail déployées.
Dans cet atelier, vous allez déployer l'application Quiz dans Kubernetes Engine et exploiter des ressources de Google Cloud Platform, dont Cloud Build et Container Registry, ainsi que des ressources de Kubernetes comme les déploiements, les pods et les services.
Objectifs
Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :
Créer des fichiers Dockerfile pour empaqueter le code de l'interface et du backend de l'application Quiz afin de la déployer
Générer des images Docker à l'aide de Cloud Build
Provisionner un cluster Kubernetes Engine en vue d'héberger l'application Quiz
Provisionner des pods répliqués dans Kubernetes Engine via des déploiements Kubernetes
Provisionner un équilibreur de charge pour l'interface de Quiz avec un service Kubernetes
Avant de commencer l'atelier
Pour chaque atelier, nous vous attribuons un nouveau projet Google Cloud et un nouvel ensemble de ressources pour une durée déterminée, sans frais.
Connectez-vous à Qwiklabs dans une fenêtre de navigation privée.
Vérifiez le temps imparti pour l'atelier (par exemple : 01:15:00) : vous devez pouvoir le terminer dans ce délai.
Une fois l'atelier lancé, vous ne pouvez pas le mettre en pause. Si nécessaire, vous pourrez le redémarrer, mais vous devrez tout reprendre depuis le début.
Lorsque vous êtes prêt, cliquez sur Démarrer l'atelier.
Notez vos identifiants pour l'atelier (Nom d'utilisateur et Mot de passe). Ils vous serviront à vous connecter à Google Cloud Console.
Cliquez sur Ouvrir la console Google.
Cliquez sur Utiliser un autre compte, puis copiez-collez les identifiants de cet atelier lorsque vous y êtes invité.
Si vous utilisez d'autres identifiants, des messages d'erreur s'afficheront ou des frais seront appliqués.
Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
Activer Google Cloud Shell
Google Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud.
Google Cloud Shell vous permet d'accéder à vos ressources Google Cloud grâce à une ligne de commande.
Dans la barre d'outils située en haut à droite dans la console Cloud, cliquez sur le bouton "Ouvrir Cloud Shell".
Cliquez sur Continuer.
Le provisionnement et la connexion à l'environnement prennent quelques instants. Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Par exemple :
gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.
Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project
Résultat :
[core]
project =
Exemple de résultat :
[core]
project = qwiklabs-gcp-44776a13dea667a6
Remarque : Pour consulter la documentation complète sur gcloud, accédez au guide de présentation de la gcloud CLI.
Tâche 1 : Préparer l'application Quiz
Dans cette section, vous allez accéder à Cloud Shell, cloner le dépôt Git qui contient l'application Quiz, configurer les variables d'environnement et exécuter l'application.
Passez au répertoire qui contient les exemples de fichiers de l'atelier :
cd ~/kubernetesengine/start
Configurez l'application Quiz :
. prepare_environment.sh
Ce fichier de script :
crée une application Google App Engine ;
exporte les variables d'environnement GCLOUD_PROJECT et GCLOUD_BUCKET ;
crée un environnement Python isolé virtualenv pour Python 3 et l'active.
met à jour PIP, puis exécute la commande pip install -r requirements.txt ;
crée des entités dans Google Cloud Datastore ;
crée un sujet Google Cloud Pub/Sub ;
crée une instance, une base de données et une table Cloud Spanner ;
affiche l'ID du projet Google Cloud Platform.
L'application Quiz est configurée lorsque le message suivant s'affiche :
Exemple de message de sortie :
Creating Cloud Pub/Sub topic
Created topic [projects/qwiklabs-gcp-92b7e5716e0cbf7e/topics/feedback].
Created subscription [projects/qwiklabs-gcp-92b7e5716e0cbf7e/subscriptions/worker-subscription].
Creating Cloud Spanner Instance, Database, and Table
Creating instance...done.
Creating database...done.
Project ID: qwiklabs-gcp-92b7e5716e0cbf7e
Tâche 2 : Examiner le code
Dans cette section, vous allez examiner les fichiers de l'application.
Pour afficher et modifier des fichiers, vous pouvez utiliser les éditeurs de script installés dans Cloud Shell, tels que nano ou vim, ou encore l'éditeur de code de Cloud Shell. Cet atelier utilise l'éditeur de code intégré.
Lancer l'éditeur de code Cloud Shell
Dans Cloud Shell, cliquez sur Ouvrir l'éditeur pour lancer l'éditeur de code.
Examiner le code
Accédez à /kubernetesengine/start.
La structure de dossiers associée à l'application Quiz reflète la façon dont elle va être déployée dans Kubernetes Engine.
L'application Web se trouve dans le dossier frontend.
Le code de l'application du nœud de calcul qui s'abonne à Cloud Pub/Sub et traite les messages se trouve dans le dossier backend.
Vous trouverez des fichiers de configuration pour Docker (un Dockerfile dans le dossier frontend, et un autre dans le dossier backend) et des fichiers .yaml Kubernetes Engine (backend-deployment et frontend-deployment).
Tâche 3 : Créer un cluster Kubernetes Engine et s'y connecter
Créer un cluster Kubernetes Engine
Dans la console Cloud Platform, accédez au menu de navigation > Kubernetes Engine > Clusters.
Cliquez sur Créer, puis sur Configurer à côté du mode de cluster Standard.
Configurez le cluster. Renseignez les champs suivants avec les valeurs fournies et conservez les valeurs par défaut dans les autres champs :
Sélectionner Allow full access to all Cloud APIs (Autoriser l'accès complet à l'ensemble des API Cloud)
Cliquez sur Create (Créer).
La création du cluster prend quelques minutes.
Se connecter au cluster
Dans cette section, vous connectez l'application Quiz au cluster Kubernetes.
Lorsque le cluster est prêt, cliquez sur le bouton Action (trois points verticaux), puis sur Associer.
Dans Se connecter au cluster, cliquez sur Exécuter dans Cloud Shell.
Appuyez sur Entrée dans Cloud Shell pour exécuter la commande déjà saisie qui ressemble à gcloud container clusters get-credentials quiz-cluster --zone us-central1-b --project [ID-projet].
Exécutez la commande suivante pour afficher la liste des pods dans le cluster :
kubectl get pods
La réponse devrait être No resources found (Aucune ressource trouvée), car le cluster ne contient aucun pod. Cela confirme que la sécurité est configurée de sorte à autoriser l'outil de ligne de commande kubectl à effectuer des opérations sur le cluster.
Tâche 4 : Créer des images Docker à l'aide de Cloud Build
Dans cette section, vous allez créer un Dockerfile pour l'interface et le backend de l'application, puis utiliser Cloud Build pour créer des images et les stocker dans Container Registry.
Créer le Dockerfile pour l'interface et le backend
Dans l'éditeur de code Cloud Shell, ouvrez frontend/Dockerfile. Vous allez ensuite ajouter un bloc de code qui exécute les actions suivantes :
Saisie de la commande Dockerfile pour initialiser la création d'une image Docker personnalisée avec, pour point de départ, l'image Python App Engine de Google
Codage des commandes Dockerfile pour activer un environnement virtuel
Écriture de la commande Dockerfile permettant d'exécuter pip install dans le cadre du processus de création
Codage de la commande Dockerfile pour ajouter les contenus du dossier actuel au chemin /app dans le conteneur
Création du Dockerfile à l'aide de l'instruction gunicorn… qui s'exécute lorsque le conteneur est ouvert. Gunicorn (Green Unicorn) est un serveur HTTP compatible avec la spécification de l'interface passerelle de serveur Web (WSGI) Python.
Copiez et collez le contenu suivant dans Dockerfile :
FROM gcr.io/google_appengine/python
RUN virtualenv -p python3.7 /env
ENV VIRTUAL_ENV /env
ENV PATH /env/bin:$PATH
ADD requirements.txt /app/requirements.txt
RUN pip install -r /app/requirements.txt
ADD . /app
CMD gunicorn -b 0.0.0.0:$PORT quiz:app
Ouvrez le fichier backend/Dockerfile, puis copiez le code suivant et collez-le dans le fichier :
FROM gcr.io/google_appengine/python
RUN virtualenv -p python3.7 /env
ENV VIRTUAL_ENV /env
ENV PATH /env/bin:$PATH
ADD requirements.txt /app/requirements.txt
RUN pip install -r /app/requirements.txt
ADD . /app
CMD python -m quiz.console.worker
Créer des images Docker à l'aide de Cloud Build
Dans Cloud Shell, vérifiez que vous êtes bien dans le dossier start :
cd ~/kubernetesengine/start
Exécutez la commande suivante pour créer l'image Docker de l'interface :
Les fichiers sont transférés dans Cloud Storage, et une image Docker est créée et stockée dans Container Registry. Cette opération prend quelques minutes.
Exécutez ensuite la commande suivante pour créer l'image Docker du backend :
Lorsque l'image Docker du backend est prête, ces derniers messages apparaissent :
DONE
-----------------------------------------------------------------------------------------------------------------------
ID CREATE_TIME DURATION SOURCE
IMAGES
STATUS
be0326f4-3f6f-42d6-850f-547e260dd4d7 2018-06-13T22:20:16+00:00 50S gs://qwiklabs-gcp-3f89d0745056ee31_cloudbuil
d/source/1528928414.79-4914d2a972f74e188f40ced135662b7d.tgz gcr.io/qwiklabs-gcp-3f89d0745056ee31/quiz-backend (+1 more
) SUCCESS
Dans la console Cloud, accédez au menu de navigation, puis cliquez sur Container Registry.
Vous devriez voir les deux pods suivants : quiz-frontend et quiz-backend.
Cliquez sur quiz-frontend.
Remarque : Vous devriez voir le nom de l'image (un hachage) et des tags (les plus récents).
Tâche 5 : Créer des ressources de déploiement et de service Kubernetes
Dans cette section, vous allez modifier les fichiers du modèle yaml qui contiennent les spécifications relatives aux ressources de déploiement et de service Kubernetes, puis créer ces ressources dans le cluster Kubernetes Engine.
Créer un fichier de déploiement Kubernetes
Dans l'éditeur de code Cloud Shell, ouvrez le fichier frontend-deployment.yaml.
Remarque : Nous avons déjà créé la base du fichier. Votre travail consiste à remplacer les espaces réservés par les valeurs propres à votre projet.
Remplacez les espaces réservés dans le fichier frontend-deployment.yaml par les valeurs suivantes :
Nom de l'espace réservé
Valeur
[PROJET_GCLOUD]
ID du projet GCP, disponible dans le panneau de gauche de l'atelier. Vous pouvez également afficher l'ID du projet en saisissant la commande echo $GCLOUD_PROJECT dans Cloud Shell.
[BUCKET_GCLOUD]
Nom du bucket Cloud Storage associé au bucket multimédia de votre projet, qui est [GCLOUD_PROJECT]-media. Vous pouvez également afficher le nom du bucket en saisissant la commande echo $GCLOUD_BUCKET dans Cloud Shell.
[FRONTEND_IMAGE_IDENTIFIER]
Image de l'interface identifiée au format gcr.io/[PROJET_GCLOUD]/quiz-frontend
Remarque : Le déploiement "quiz-frontend" provisionne trois instances répliquées de l'image Docker de l'interface dans des pods Kubernetes, en les répartissant sur les trois nœuds du cluster Kubernetes Engine.
Enregistrez le fichier.
Remplacez les espaces réservés dans le fichier backend-deployment.yaml par les valeurs suivantes :
Nom de l'espace réservé
Valeur
[PROJET_GCLOUD]
GCP Project ID
[BUCKET_GCLOUD]
ID du bucket Cloud Storage utilisé en tant que bucket multimédia pour votre projet, soit [PROJET_GCLOUD]-media.
[BACKEND_IMAGE_IDENTIFIER]
Image du backend identifiée au format gcr.io/[PROJECT_GCLOUD]/quiz-backend
Remarque : Le déploiement "quiz-backend" provisionne deux instances répliquées de l'image Docker du backend dans des pods Kubernetes, en les répartissant sur deux des trois nœuds du cluster Kubernetes Engine.
Enregistrez le fichier.
Examinez le contenu du fichier frontend-service.yaml.
Remarque : Le service expose le déploiement de l'interface à l'aide d'un équilibreur de charge. L'équilibreur de charge est configuré pour envoyer les requêtes provenant des clients vers les trois instances répliquées du pod de l'interface.
Exécuter les fichiers de déploiement et de service
Dans Cloud Shell, provisionnez le déploiement de l'interface de Quiz :
kubectl create -f ./frontend-deployment.yaml
Provisionnez le déploiement du backend de Quiz :
kubectl create -f ./backend-deployment.yaml
Provisionnez le service de l'interface de Quiz :
kubectl create -f ./frontend-service.yaml
Remarque : Chaque commande provisionne des ressources dans Kubernetes Engine. Ce processus dure quelques minutes.
Tâche 6 : Tester l'application Quiz
Dans cette section, vous allez examiner les pods et le service déployés, et accéder à l'application Quiz.
Examiner les ressources déployées
Dans la console Google Cloud, accédez au menu de navigation, puis cliquez sur Kubernetes Engine.
Cliquez sur Charges de travail.
Remarque : Vous devriez voir les deux conteneurs suivants : quiz-frontend et quiz-backend.
Vous pouvez constater que les conteneurs sont en cours de création ou d'ores et déjà opérationnels.
Cliquez sur quiz-frontend. Dans la section Pods gérés, trois pods quiz-frontend sont présents.
Dans la section Services en bas de la page, recherchez la section Points de terminaison, copiez l'adresse IP, puis collez-la dans le champ d'URL d'un nouvel onglet ou d'une nouvelle fenêtre de navigateur :
L'application Quiz s'ouvre, ce qui signifie que vous l'avez correctement déployée. Vous pouvez arrêter l'atelier ici ou utiliser le temps restant pour créer d'autres questionnaires.
Terminer l'atelier
Une fois l'atelier terminé, cliquez sur Terminer l'atelier. Google Cloud Skills Boost supprime les ressources que vous avez utilisées, puis efface le compte.
Si vous le souhaitez, vous pouvez noter l'atelier. Sélectionnez un nombre d'étoiles, saisissez un commentaire, puis cliquez sur Envoyer.
Le nombre d'étoiles correspond à votre degré de satisfaction :
1 étoile = très insatisfait(e)
2 étoiles = insatisfait(e)
3 étoiles = ni insatisfait(e), ni satisfait(e)
4 étoiles = satisfait(e)
5 étoiles = très satisfait(e)
Si vous ne souhaitez pas donner votre avis, vous pouvez fermer la boîte de dialogue.
Pour soumettre des commentaires, suggestions ou corrections, veuillez accéder à l'onglet Assistance.
Copyright 2026 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms de société et de produit peuvent être des marques des sociétés auxquelles ils sont associés.
Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.
Utilisez la navigation privée
Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
Cliquez sur Ouvrir la console en navigation privée
Connectez-vous à la console
Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.
Ce contenu n'est pas disponible pour le moment
Nous vous préviendrons par e-mail lorsqu'il sera disponible
Parfait !
Nous vous contacterons par e-mail s'il devient disponible
Un atelier à la fois
Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci
Utilisez la navigation privée pour effectuer l'atelier
Le meilleur moyen d'exécuter cet atelier consiste à utiliser une fenêtre de navigation privée. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
Dans cet atelier, vous allez déployer l'application Quiz dans Kubernetes Engine et exploiter des ressources de Google Cloud Platform, dont Container Builder et Container Registry, ainsi que des ressources de Kubernetes comme les déploiements, les pods et les services.
Durée :
0 min de configuration
·
Accessible pendant 120 min
·
Terminé après 120 min