
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Build two Container images in Cloud Build
/ 50
Build and Test Containers with a build configuration file and Cloud Build
/ 50
Dans cet atelier, vous allez créer une image de conteneur Docker à partir du code fourni et d'un Dockerfile en utilisant Cloud Build. Vous importerez ensuite ce conteneur dans Artifact Registry.
Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :
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.
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).
L'atelier lance les ressources, puis ouvre la page Se connecter dans un nouvel onglet.
Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.
Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.
Vous trouverez également le nom d'utilisateur dans le panneau Détails concernant l'atelier.
Cliquez sur Suivant.
Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.
Vous trouverez également le mot de passe dans le panneau Détails concernant l'atelier.
Cliquez sur Suivant.
Accédez aux pages suivantes :
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Une fois la connexion initiale effectuée, le tableau de bord du projet s'affiche.
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.
Résultat :
Exemple de résultat :
Résultat :
Exemple de résultat :
Notez le nom de votre projet Google Cloud. Cette valeur est disponible dans la barre supérieure de la console Google Cloud. Elle se compose de la chaîne qwiklabs-gcp-
, suivie de nombres hexadécimaux.
Dans la console Google Cloud, dans le menu de navigation (), cliquez sur API et services.
Cliquez sur Bibliothèque.
Saisissez Cloud Build dans la zone Rechercher des API et des services.
La fiche correspondant à l'API Cloud Build apparaît. Si vous ne voyez pas de message confirmant que l'API est activée, cliquez sur le bouton Activer.
Utilisez le bouton Retour pour revenir à l'écran précédent, qui propose un champ de recherche. Dans le champ de recherche, saisissez Artifact Registry.
La fiche correspondant à l'API Artifact Registry apparaît. Si vous ne voyez pas de message confirmant que l'API est activée, cliquez sur le bouton Activer.
Vous pouvez créer des fichiers de configuration de compilation pour fournir à Cloud Build des instructions portant sur les tâches à effectuer lors de la création d'un conteneur. Ces fichiers de compilation permettent de récupérer des dépendances et d'exécuter des tests unitaires, des analyses et bien d'autres opérations. Dans cette tâche, vous allez créer un Dockerfile et l'utiliser comme script de configuration de compilation avec Cloud Build. Vous allez aussi créer un script shell simple (quickstart.sh) qui représentera une application à l'intérieur du conteneur.
Dans la barre de titre de la console Google Cloud, cliquez sur Activer Cloud Shell.
Lorsque vous y êtes invité, cliquez sur Autoriser.
Cloud Shell s'ouvre en bas de la fenêtre de la console Google Cloud.
quickstart.sh
vide avec l'éditeur de texte nano :quickstart.sh
:Enregistrez le fichier et quittez Nano en appuyant sur "CTRL+X", sur "Y", puis sur "Entrée".
Créez un fichier Dockerfile
vide avec l'éditeur de texte nano :
Cette commande indique au build d'utiliser l'image de base Alpine Linux.
Cette commande permet d'ajouter le script quickstart.sh
au répertoire / de l'image.
Cette commande configure l'image pour qu'elle exécute le script /quickstart.sh
lorsque le conteneur associé est créé et exécuté.
Voici à quoi doit maintenant ressembler le fichier Dockerfile :
Enregistrez le fichier et quittez nano en appuyant sur "CTRL+X", sur "Y", puis sur "Entrée".
Dans Cloud Shell, exécutez la commande suivante pour rendre le script quickstart.sh
exécutable :
quickstart-docker-repo
à l'emplacement Une fois la compilation terminée, votre image Docker est créée et transférée vers Artifact Registry.
Dans la console Google Cloud, recherchez Artifact Registry dans la barre de recherche (située en haut de la fenêtre de la console).
Cliquez sur le dépôt intitulé quickstart-docker-repo
.
L'image Docker quickstart-image
apparaît dans la liste.
Cloud Build prend aussi en charge les fichiers de configuration de compilation personnalisés. Dans cette tâche, vous allez intégrer un conteneur Docker existant à l'aide d'un fichier de compilation personnalisé au format YAML et de Cloud Build.
Créons un exemple de fichier de configuration Cloud Build personnalisé nommé cloudbuild.yaml
.
cloudbuild.yaml
à l'aide de la commande suivante :cloudbuild.yaml
:Appuyez sur Ctrl+O, puis sur Entrée pour enregistrer les modifications.
Appuyez sur Ctrl+X pour quitter l'éditeur de texte nano.
Exécutez la commande suivante pour définir la variable de région et l'insérer dans le fichier yaml :
cloudbuild.yaml
:Les résultats suivants s'affichent :
Ce fichier indique à Cloud Build d'utiliser Docker pour compiler une image à partir des spécifications du Dockerfile enregistré dans le répertoire local, d'ajouter à l'image un tag gcr.io/$PROJECT_ID/quickstart-image
($PROJECT_ID
est une variable de substitution que Cloud Build remplace automatiquement par l'ID du projet correspondant), puis d'envoyer cette image vers Artifact Registry.
cloudbuild.yaml
.Le build généré sur Cloud Shell doit être identique au précédent. Une fois la compilation terminée, une nouvelle version de la même image est envoyée vers Artifact Registry.
Dans la console Google Cloud, recherchez Artifact Registry dans la barre de recherche (située en haut de la fenêtre de la console).
Dans les résultats de recherche, cliquez sur Artifact Registry.
Cliquez sur le dépôt intitulé quickstart-docker-repo > quickstart-image.
La liste comporte maintenant deux versions de quickstart-image
.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Dans la console Google Cloud, recherchez Cloud Build dans la barre de recherche (située en haut de la fenêtre de la console).
Dans les résultats de recherche, cliquez sur Cloud Build.
Dans Cloud Build, cliquez sur Historique. La liste comporte deux builds.
Cliquez sur l'ID correspondant au build en haut de la liste. Toutes les informations sur le build s'affichent, y compris son journal.
L'efficacité des fichiers de configuration de compilation personnalisés vient du fait qu'ils ne se contentent pas de compiler des conteneurs, mais peuvent aussi effectuer d'autres opérations, en parallèle ou à la suite. Ils peuvent par exemple tester les nouveaux conteneurs, les envoyer vers plusieurs destinations, et même les déployer sur Kubernetes Engine.
Dans cette tâche, nous allons vous présenter un exemple simple : un fichier de configuration de compilation qui teste un conteneur après l'avoir compilé, puis transmet le résultat à son environnement d'appel.
Pour commencer, vous devez modifier le fichier quickstart.sh
.
Dans Cloud Shell, ouvrez quickstart.sh
dans nano.
Remplacez le code existant par ce qui suit :
Appuyez sur Ctrl+O, puis sur Entrée pour enregistrer les modifications.
Appuyez sur Ctrl+X pour quitter l'éditeur de texte nano.
Créons un fichier de configuration Cloud Build personnalisé nommé cloudbuild2.yaml
. Il a été légèrement modifié de manière à montrer comment Cloud Build peut tester les conteneurs qu'il a compilés.
cloudbuild2.yaml
à l'aide de la commande suivante :cloudbuild2.yaml
:Appuyez sur Ctrl+O, puis sur Entrée pour enregistrer les modifications.
Appuyez sur Ctrl+X pour quitter l'éditeur de texte nano.
Exécutez la commande suivante pour insérer la valeur de la région dans le fichier yaml :
cloudbuild2.yaml
:Le résultat suivant s'affiche :
En plus des opérations vues précédemment, ce fichier de configuration de compilation exécute l'image quickstart-image
qu'il a créée. Dans cette tâche, le script quickstart.sh
a été modifié de manière à simuler l'échec du test lorsque l'argument ['fail']
lui est transmis.
cloudbuild.yaml
.Vous pouvez constater que le résultat de la commande se termine par ce texte :
Résultat
La commande va renvoyer une valeur non nulle. Si vous aviez intégré cette compilation à un script, celui-ci aurait pu agir sur la base de cet échec.
Cliquez sur Vérifier ma progression pour valider l'objectif.
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 :
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 2020 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.
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
One lab at a time
Confirm to end all existing labs and start this one