Compilateurs Cloud

Les compilateurs Cloud sont des images de conteneurs sur lesquelles sont installés les langages et outils courants. Vous pouvez configurer Cloud Build pour exécuter une commande spécifique dans le contexte de ces compilateurs.

Cette page décrit les types de compilateurs que vous pouvez utiliser avec Cloud Build.

Images accessibles au public

Cloud Build permet d'exécuter vos tâches à l'aide de n'importe quelle image accessible publiquement. Pour ce faire, spécifiez l'URL de l'image dans le champ name de votre fichier de configuration. Utilisez le champ args pour spécifier les commandes que vous souhaitez exécuter dans l'image. Le champ args d'une étape de compilation prend une liste d'arguments et la transmet à l'image à laquelle le champ name fait référence.

L'extrait de code suivant montre comment utiliser l'image ubuntu publique de Docker Hub et exécuter une commande dans cette image :

steps:
- name: 'ubuntu'
  args: ['echo', 'hello world']

Voici un autre exemple d'extrait de code qui utilise l'image de l'analyseur Open Source Black Duck pour Cloud Build à partir du lanceur de la console Google Cloud:

steps:
- name: launcher.gcr.io/blackduck-public/blackducksoftware-containerbuilder-scanner
  ...

Pour accéder à d'autres exemples d'utilisation des images publiques de Docker Hub pour vos tâches, consultez les sections Créer des applications Node.js et Créer des applications Go.

Images des compilateurs pris en charge fournies par Cloud Build

Cloud Build fournit et conserve des images prédéfinies auxquelles vous pouvez faire référence dans votre fichier de configuration afin d'exécuter vos tâches. Vous trouverez ces images prédéfinies à l'emplacement suivant:

gcr.io/cloud-builders/...

Le code source de ces compilateurs est disponible dans le référentiel GitHub des compilateurs Cloud.

Pour accéder à des exemples d'utilisation des images prédéfinies, consultez les sections Créer des images de conteneurs et Déployer sur Cloud Run.

Le tableau suivant répertorie quelques exemples d'images de compilateurs pris en charge :

Builder Nom Exemple
bazel gcr.io/cloud-builders/bazel exemple bazel
docker gcr.io/cloud-builders/docker exemple docker
git gcr.io/cloud-builders/git exemple git
gcloud gcr.io/cloud-builders/gcloud exemple gcloud
gke-deploy gcr.io/cloud-builders/gke-deploy Exemple gke-deploy
gradle gcr.io/cloud-builders/gradle exemple gradle
maven gcr.io/cloud-builders/mvn exemple maven
Liste complète des compilateurs acceptés par Cloud Build.

Compilateurs issus de la communauté

La communauté de développeurs Cloud Build fournit des compilateurs Open Source que vous pouvez utiliser pour exécuter des tâches. Les images prédéfinies ne sont pas disponibles pour ces compilateurs. Pour les utiliser, téléchargez le code source à partir du référentiel GitHub de la communauté des compilateurs Cloud, puis générez l'image. Pour accéder à un exemple montrant comment compiler un outil issu des contributions de la communauté et l'utiliser pour vos tâches, consultez la section Créer des images de VM à l'aide de Packer.

Le tableau suivant répertorie quelques exemples de compilateurs issus de la communauté :

Builder Description
docker-compose Exécute des tests d'intégration sur des images docker.
remote-builder Exécute une étape de compilation sur une machine virtuelle Compute Engine configurable.
packer Automatise la création d'images de machine à l'aide de Packer
helm Gère les packages Kubernetes à l'aide de Helm.
pack Exécute une étape de compilation à l'aide du buildpack cloud natif spécifié.
kaniko Exécute l'étape de compilation à l'aide de kaniko.
Liste complète des compilateurs issus de la communauté pour Cloud Build.

Les compilateurs issus de la communauté sont gérés par la communauté Open Source de la communauté des compilateurs Cloud. Cloud Build ne gère pas officiellement ces compilateurs. Pour en savoir plus sur la contribution à un compilateur, consultez la page GitHub de la communauté des compilateurs Cloud.

Développer votre propre compilateur

Vous pouvez créer un compilateur personnalisé à utiliser dans vos compilations. Un compilateur personnalisé est une image de conteneur que Cloud Build extrait et exécute avec votre source. Un compilateur personnalisé peut exécuter n'importe quel script ou fichier binaire à l'intérieur du conteneur. Il dispose des mêmes fonctions qu'un conteneur. Pour obtenir des instructions sur la création d'un compilateur personnalisé, consultez la section Créer des étapes de compilation personnalisées.

Étapes suivantes