Compiladores

Compilador genérico

Los paquetes de compilación tienen un compilador genérico predeterminado que crea imágenes de contenedor diseñadas para ejecutarse en los servicios de Google Cloud, incluidos, sin limitaciones, Google Kubernetes Engine, GKE Enterprise, Cloud Run, App Engine y funciones de Cloud Run.

El compilador genérico de los paquetes de compilación realiza las siguientes acciones:

  1. Detecta el lenguaje de tu código fuente de forma automática.
  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 implementable.

El compilador genérico es una imagen de contenedor alojada de forma pública 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

Compilador predeterminado

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

Lenguajes que admite builder:google-22

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

Lenguajes que admite builder:v1

Idioma Versiones compatibles Aplicaciones Funciones
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 paquetes de compilación también publican los compiladores que se usan para organizar aplicaciones en contenedores de los entornos de ejecución de segunda generación de App Engine.

Los compiladores de App Engine incluyen paquetes de compilación adicionales y parámetros de configuración específicos de App Engine. Por ejemplo, están optimizadas para la velocidad de ejecución y las actualizaciones automáticas. Los compiladores se basan en el lenguaje del entorno de ejecución y el sistema operativo:

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

¿Qué sigue?