Los Compiladores en la nube son imágenes de contenedor con lenguajes y herramientas comunes instaladas. Puedes configurar Cloud Build para ejecutar un comando específico dentro del contexto de estos compiladores.
En esta página, se describen los tipos de compiladores que puedes usar con Cloud Build.
Imágenes disponibles a nivel público
Cloud Build permite usar cualquier imagen disponible a nivel público para ejecutar las tareas. Para usar una imagen, especifica su URL en el campo name
del archivo de configuración. Usa el campo args
para especificar los comandos que deseas ejecutar dentro de la imagen. En el campo args
de un paso de compilación, se toma una lista de argumentos y se los pasa a la imagen a la que se hace referencia en el campo name
.
En el siguiente fragmento de código, se muestra cómo usar la imagen pública ubuntu
de
Docker Hub
y ejecuta un comando dentro de esa imagen:
steps:
- name: 'ubuntu'
args: ['echo', 'hello world']
Este es otro fragmento de código de ejemplo en el que se usa la imagen de análisis de código abierto de Black Duck para Cloud Build desde Google Cloud Console Launcher:
steps:
- name: launcher.gcr.io/blackduck-public/blackducksoftware-containerbuilder-scanner
...
Para obtener más ejemplos sobre cómo usar las imágenes disponibles a nivel público de Docker Hub en tus tareas, consulta Compila aplicaciones de Node.js y Compila aplicaciones de Go.
Imágenes de compiladores compatibles que proporciona Cloud Build
Cloud Build proporciona y mantiene imágenes compiladas con anterioridad a las que puedes hacer referencia en tu archivo de configuración para ejecutar tareas. Puedes encontrar estas imágenes compiladas con anterioridad en la siguiente ubicación:
gcr.io/cloud-builders/...
El código fuente para estos compiladores está disponible en el repositorio de GitHub de los compiladores de Cloud.
Para ver ejemplos sobre cómo usar imágenes compiladas con anterioridad compatibles, consulta Compila imágenes de contenedor y Realiza implementaciones en Cloud Run.
En la siguiente tabla, se enumeran algunos ejemplos de imágenes de compilador compatibles:
Compilador | Nombre | Ejemplo |
---|---|---|
bazel | gcr.io/cloud-builders/bazel |
ejemplo de bazel |
docker | gcr.io/cloud-builders/docker |
ejemplo de docker |
git | gcr.io/cloud-builders/git |
ejemplo de git |
gcloud | gcr.io/cloud-builders/gcloud |
ejemplo de gcloud |
gke-deploy | gcr.io/cloud-builders/gke-deploy |
ejemplo de gke-deploy |
Gradle | gcr.io/cloud-builders/gradle |
ejemplo de gradle |
maven | gcr.io/cloud-builders/mvn |
ejemplo de maven |
Lista completa de compiladores compatibles con Cloud Build. |
Compiladores que aporta la comunidad
La comunidad de desarrolladores de Cloud Build proporciona compiladores de código abierto que puedes usar para ejecutar tus tareas. Las imágenes compiladas previamente no están disponibles para estos constructores; para usar estos compiladores, descarga el código fuente desde la nube GitHub de la comunidad de compiladores repositorio y, luego, compilar la imagen. Si quieres obtener un ejemplo sobre cómo crear un compilador aportado por la comunidad y usarlo en tus tareas, consulta Compila imágenes de VM mediante Packer.
En la tabla siguiente, se enumeran algunos ejemplos de compiladores que aporta la comunidad:
Compilador | Descripción |
---|---|
docker-compose |
Ejecuta pruebas de integración en imágenes de Docker. |
harness-chaos |
Inicia experimentos de caos y prueba la resiliencia de las aplicaciones con Ingeniería del caos de Harness. |
helm |
Administra paquetes de Kubernetes con Helm. |
kaniko |
Ejecuta tu paso de compilación con kaniko. |
pack |
Ejecuta tu paso de compilación con el Cloud Native Buildpack especificado. |
packer |
Automatiza la creación de imágenes de máquina con Packer. |
remote-builder |
Ejecuta tu paso de compilación en una VM de Compute Engine configurable. |
Lista completa de compiladores que aporta la comunidad en Cloud Build. |
La comunidad de código abierto es la encargada de mantener los compiladores que se aportan a la comunidad en la comunidad de compiladores de Cloud. Cloud Build no tiene mantener estos compiladores. Para obtener información sobre cómo contribuir a un compilador, consulta la página de GitHub de la comunidad de compiladores en la nube.
Escribe tu propio compilador personalizado
Puedes crear tu propio compilador personalizado para usar en tus compilaciones. Un compilador personalizado es una imagen de contenedor que Cloud Build extrae y ejecuta con tu fuente. El compilador personalizado puede ejecutar cualquier secuencia de comandos o cualquier objeto binario dentro del contenedor. Por lo tanto, puede hacer todo lo que hace un contenedor. A fin de obtener instrucciones para crear un compilador personalizado, consulta Crea pasos de compilación personalizados.
¿Qué sigue?
- Obtén más información para usar creadores y creadores personalizados creados por la comunidad.
- Obtén información sobre la estructura de un archivo de configuración de la compilación.
- Aprende a usar una imagen de
node
disponible a nivel público para compilar aplicaciones deNode.js
. - Aprende a usar una imagen de
gcloud
compilada previamente para implementar en Cloud Run Functions. - Obtén más información sobre cómo usar una imagen de
firebase
aportada por la comunidad para implementarla en Firebase.