Constructores

Generador genérico

Buildpacks tiene un compilador genérico predeterminado que crea imágenes de contenedor diseñadas para ejecutarse en servicios, como Google Kubernetes Engine, GKE Enterprise, Cloud Run, App Engine y funciones de Cloud Run. Google Cloud

El compilador genérico de paquetes de compilación:

  1. Detecta automáticamente el idioma de tu código fuente. El creador genérico de buildpacks analiza los archivos de configuración de proyectos comunes para determinar la versión de lenguaje específica. Por ejemplo, si el compilador detecta que el código fuente es Node.js, inspecciona el campo engines del archivo package.json para determinar una versión específica de Node.js. Si el compilador no puede determinar una versión específica, utiliza la última versión disponible.
  2. Determina si ese código fuente es una aplicación (servicio) o una función.
  3. Compila el código fuente en una imagen de contenedor desplegable.

El compilador genérico es una imagen de contenedor alojada públicamente en Container Registry.

Etiqueta Ubicación Sistema operativo
latest gcr.io/buildpacks/builder:latest Ubuntu 22 (google-22)
google-22 gcr.io/buildpacks/builder:google-22 Ubuntu 22
v1 gcr.io/buildpacks/builder:v1 Ubuntu 18

Creador predeterminado

Para usar siempre la versión y el sistema operativo más recientes, puedes especificar la etiqueta latest. La etiqueta latest usa de forma predeterminada la versión google-22 del generador genérico y se utiliza cuando ejecutas el comando gcloud run deploy. Si necesitas fijar una versión, consulta las instrucciones sobre cómo usar un compilador específico.

builder:google-22 idiomas admitidos

Idioma Versiones compatibles Aplicaciones Functions
Python 3.10.x
3.11.x
3.12.x
3.13.x
Node.js 12.x.x
14.x.x
16.x.x
18.x.x
20.x.x
22.x.x
24.x.x
Java 8
11
17
18
21
Go 1.x
Ruby 3.1.x
3.2.x
3.3.x
3.4.x
PHP 8.1.x
8.2.x
8.3.x
8.4.x
.NET Core 6.x
7.x
8.x

builder:v1 idiomas admitidos

Idioma Versiones compatibles Aplicaciones Functions
Python 3.7.x
3.8.x
3.9.x
3.10.x
3.11.x
Node.js 8.x.x
12.x.x
14.x.x
16.x.x
18.x.x
20.x.x
Java 8.
11
17
18
Go 1.x
Ruby 2.5.x
2.6.x
2.7.x
3.0.x
3.1.x
3.2.x
3.3.x
PHP 7.4.x
8.0.x
8.1.x
8.2.x
.NET Core 3.1.x
6.x
7.x
8.x

Compilador de App Engine

Los buildpacks también publican los compiladores que se usan para contenerizar aplicaciones para los runtimes de segunda generación de App Engine.

Los compiladores de App Engine incluyen buildpacks adicionales y configuraciones específicas de App Engine. Por ejemplo, están optimizadas para la velocidad de ejecución y las actualizaciones automáticas. Los compiladores se clasifican por lenguaje de tiempo de ejecución y sistema operativo:

Idioma Sistema operativo Ubicación Versiones disponibles
Python Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/python Python 3.7, 3.8, 3.9, 3.10 y 3.11
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/python Python 3.10 y 3.11
Node.js Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/nodejs Node.js 10, 12 y 14
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/nodejs Node.js 18 y 20
Go Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/go Go 1.12, 1.13, 1.14, 1.15, 1.16, 1.17, 1.18, 1.19 y 1.20
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/go Go 1.16, 1.17, 1.18, 1.19 y 1.20
Java Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/java Java 8 y 11
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/java Java 17
PHP Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/php PHP 7.2, 7.3, 7.4 y 8.1
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/php PHP 8.2
Ruby Ubuntu 18 http://us-central1-docker.pkg.dev/serverless-runtimes/google-18-full/builder/ruby Ruby 2.5 y 2.6. 2.7, 3.0 y 3.1
Ubuntu 22 http://us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/builder/ruby Ruby 3.2

Siguientes pasos