Comment lancer une fenêtre de terminal sur Ubuntu Linux
4 septembre 2020
Comment utiliser Terraform avec CloudFlare – CloudSavvy IT
4 septembre 2020

plateforme cloud google

Le déploiement et l'intégration continus sont le processus qui consiste à exécuter automatiquement des tests et des compilations chaque fois que des modifications de source sont poussées. Vous pouvez configurer Google Cloud Platform (GCP) pour exécuter des compilations Docker automatisées chaque fois que vous apportez des mises à jour à votre conteneur et déployez-le sur Cloud Run ou Google Kubernetes Engine (GKE).

Dans l'ensemble, la configuration pour cela est assez simple: Dockerfiles gère déjà la plupart de la configuration de compilation. Il vous suffit donc de relier quelques services entre eux et de configurer Cloud Build pour déployer des mises à jour sur Cloud Run ou GKE.

Créer un référentiel Cloud Source

Cloud Build extrait le code de Cloud Source, la propre solution Git gérée de Google. Cependant, vous n'aurez pas à passer de votre fournisseur actuel, car vous pouvez simplement lier votre compte GitHub ou Bitbucket, ou simplement le configurer comme une version distante distincte.

Dirigez-vous vers le Console Cloud Source, et créez un nouveau repo. Donnez-lui un nom et connectez-vous avec votre compte pour sélectionner un référentiel.

créer un dépôt de source cloud

Si vous l'ajoutez en tant que télécommande distincte, vous pouvez ajouter le dépôt avec le git remote ajouter commande, qui le rendra disponible sous le nom distant "Google. » Pour pousser vers cette branche, tout ce que vous avez à faire est de qualifier complètement le nom de la télécommande et de la branche lors de l'exécution git push, en remplaçant la valeur par défaut origine avec Google:

git push - all google

Configurer Cloud Build

Dirigez-vous vers le Console Cloud Buildet configurez un nouveau déclencheur de construction:

créer un nouveau déclencheur

Ce déclencheur s'exécutera en réponse aux événements du référentiel source. Donnez-lui un nom et indiquez si vous souhaitez créer en réponse à des validations dans une branche spécifique, ou lorsque de nouvelles balises sont poussées, ou lorsque des demandes d'extraction sont effectuées sur GitHub.

écouter les changements de source sur l'agence ou PR

En dessous, sélectionnez "Dockerfile" comme configuration de compilation, plutôt que la propre configuration YAML de Google. C'est l'avantage de travailler avec des conteneurs; vous avez déjà géré le processus de compilation dans la configuration Docker, vous pouvez donc simplement le sélectionner ici.

Si votre Dockerfile est nommé «Dockerfile» et placé à la racine du référentiel, vous pouvez laisser les deux premiers champs vides. Pour le nom de l'image, il sera transféré vers GCR, le propre registre de conteneurs de Google.

gcr.io/$PROJECT_ID/imagename:$COMMIT_SHA

Sélectionner

Une fois créé, vous pouvez cliquer sur «Run Trigger» pour démarrer manuellement la construction. Étant donné que Cloud Build utilise uniquement votre fichier Dockerfile, tant qu'il se construit localement, vous ne devriez pas avoir de problèmes avec la compilation.

construction réussie

Si vous vous dirigez vers le Console GCR, vous devriez voir l'image nouvellement construite.

Configurer les déploiements automatiques sur Cloud Run

Vous pouvez mettre à jour manuellement vos déploiements, mais si vous souhaitez effectuer des mises à jour automatiques, vous aurez besoin d'un peu plus de configuration.

Au lieu de choisir uniquement le Dockerfile, vous pouvez choisir d'utiliser un fichier YAML traditionnel, qui vous permettra d'exécuter certaines commandes après le processus de construction. Dans ce cas, en cours d'exécution gcloud exécuter déployer et en lui passant une référence à l'image nouvellement créée dans GCR.

pas:
# construire l'image du conteneur
- nom: 'gcr.io/cloud-builders/docker'
args: ('build', '-t', 'gcr.io/$PROJECT_ID/(SERVICE-NAME):$COMMIT_SHA', '.')
# pousser l'image du conteneur vers Container Registry
- nom: 'gcr.io/cloud-builders/docker'
args: ('push', 'gcr.io/$PROJECT_ID/(SERVICE-NAME):$COMMIT_SHA')
# Déployer l'image du conteneur sur Cloud Run
- nom: 'gcr.io/cloud-builders/gcloud'
args:
- 'courir'
- 'déployer'
- '(NOM DU SERVICE)'
- '--image'
- 'gcr.io/$PROJECT_ID/(SERVICE-NAME):$COMMIT_SHA'
- '--Région'
- '(RÉGION)'
- '--Plate-forme'
- 'géré'
images:
- 'gcr.io/$PROJECT_ID/(SERVICE-NAME):$COMMIT_SHA'

Vous devrez également autoriser Cloud Build à accéder à Cloud Run à partir des paramètres du compte de service.

paramètres du compte de service

//]]>