Cette page vous explique comment utiliser Cloud Build pour déployer une application conteneurisée dans Cloud Run.
Avant de commencer
- Connectez-vous à votre compte Google.
Si vous n'en possédez pas déjà un, vous devez en créer un.
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.
- Activer les API Cloud Build, Cloud Run, Artifact Registry, and Compute Engine.
- Installez et initialisez le SDK Cloud.
Octroyer des autorisations
Cloud Build requiert les autorisations Administrateur Cloud Run et Utilisateur du compte de service IAM avant de pouvoir déployer une image dans Cloud Run.
Ouvrez une fenêtre de terminal.
Définissez les variables d'environnement pour stocker l'ID et le numéro de votre projet :
PROJECT_ID=$(gcloud config list --format='value(core.project)') PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='value(projectNumber)')
Accordez le rôle Administrateur Cloud Run au compte de service Cloud Build :
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:$PROJECT_NUMBER@cloudbuild.gserviceaccount.com \ --role=roles/run.admin
Attribuez le rôle Utilisateur du compte de service IAM au compte de service Cloud Build sur le compte de service d'exécution Cloud Run :
gcloud iam service-accounts add-iam-policy-binding \ $PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --member=serviceAccount:$PROJECT_NUMBER@cloudbuild.gserviceaccount.com \ --role=roles/iam.serviceAccountUser
Déployer une image prédéfinie
Vous pouvez configurer Cloud Build pour qu'il déploie une image prédéfinie stockée dans Artifact Registry dans Cloud Run.
Pour déployer une image prédéfinie, procédez comme suit :
Ouvrez une fenêtre de terminal (si aucune n'est déjà ouverte).
Créez un répertoire nommé
helloworld
et accédez-y :mkdir helloworld cd helloworld
Créez un fichier nommé
cloudbuild.yaml
avec le contenu suivant : Il s'agit du fichier de configuration de Cloud Build. Il contient des instructions permettant à Cloud Build de déployer l'image nomméeus-docker.pkg.dev/cloudrun/container/hello
sur le service Cloud Run nommécloudrunservice
.Déployez l'image en exécutant la commande suivante :
gcloud builds submit --config cloudbuild.yaml
Une fois la compilation terminée, un résultat semblable aux lignes suivantes doit s'afficher :
DONE
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ID CREATE_TIME DURATION SOURCE IMAGES STATUS
784653b2-f00e-4c4b-9f5f-96a5f115bef4 2020-01-23T14:53:13+00:00 23S gs://cloudrunqs-project_cloudbuild/source/1579791193.217726-ea20e1c787fb4784b19fb1273d032df2.tgz - SUCCESS
Vous venez de déployer l'image hello
dans Cloud Run.
Exécuter l'image déployée
Ouvrez la page Cloud Run dans Cloud Console :
Sélectionnez votre projet et cliquez sur Ouvrir.
La page Services Cloud Run s'affiche.
Dans le tableau, recherchez la ligne portant le nom cloudrunservice, puis cliquez sur cloudrunservice.
La page Informations sur le service de cloudrunservice s'affiche.
Pour exécuter l'image que vous avez déployée sur cloudrunservice, cliquez sur l'URL :
Étape suivante
- Apprenez à créer des applications à l'aide de Cloud Build.
- Apprenez à créer un fichier de configuration de compilation de base.
- Découvrez comment afficher les résultats de la compilation.
- Découvrez d'autres façons de déployer sur Cloud Run.
- Découvrez comment déployer sur Google Kubernetes Engine.
- Consultez nos ressources sur DevOps et découvrez notre programme de recherche.