Los siguientes pasos de esta guía se enfocan en las compilaciones remotas con Cloud Build.
En el caso de las compilaciones locales, consulta las instrucciones de la imagen de caché y la página de referencia del comando pack
.
Usa imágenes de caché con Cloud Build
Debes crear un archivo de configuración de compilación, por ejemplo, cloudbuild.yaml
, para habilitar las imágenes en caché de paquetes de compilación en Cloud Build. El archivo de configuración de compilación le indica a la CLI de pack
que publique una imagen de compilación en un repositorio remoto especificado. Esta imagen de compilación se usa como tu “imagen de caché” para compilaciones posteriores.
Ten en cuenta que la primera compilación que ejecutes con tu nuevo archivo de configuración de compilación usará el comando pack
para crear y, luego, enviar la caché de imágenes de compilación inicial a tu repositorio. Las mejoras en el rendimiento de la compilación se ven solo después de que la imagen de caché inicial esté disponible para tus compilaciones.
Crea un archivo de configuración de compilación
Para definir un archivo de configuración de Cloud Build, debes escribir un archivo YAML con un paso de compilación que use la CLI de pack
para crear la imagen.
En el siguiente ejemplo cloudbuild.yaml
, la compilación crea una imagen para tu aplicación o función con paquetes de compilación, crea la imagen de caché de compilación inicial y la envía a un repositorio:
options: logging: CLOUD_LOGGING_ONLY pool: {} projectId: PROJECT_ID steps: - name: gcr.io/k8s-skaffold/pack entrypoint: pack args: - build - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME - --builder - gcr.io/buildpacks/builder:latest - --cache-image - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/CACHE_IMAGE_NAME:latest - --publish
Reemplaza lo siguiente:
LOCATION
por el nombre de la región de tu repositorio de contenedores. Ejemplo:us-west2
PROJECT_ID
por el ID del proyecto de Google Cloud.REPO_NAME
por el nombre de tu repositorio de Docker.IMAGE_NAME
por el nombre de la imagen de contenedor de la aplicación o función.- Reemplaza
CACHE_IMAGE_NAME
por el nombre de tu imagen de caché de compilación.
Consulta también los otros argumentos admitidos que puedes definir en el archivo de configuración de compilación en la referencia del comando pack build
.
Compila de forma remota con imágenes almacenadas en caché
Para ejecutar una compilación, incluye la marca de comando --config
y especifica tu archivo de configuración. Por ejemplo, para usar un archivo llamado cloudbuild.yaml
, puedes ejecutar lo siguiente:
gcloud builds submit --config cloudbuild.yaml --pack image=example-docker.pkg.dev/my-project-id/repo/example-image
Para obtener más información sobre las compilaciones remotas, consulta Cómo compilar una aplicación o Cómo compilar una función.