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

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

Lenguajes que admite builder:v1

Lenguaje 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
Java 8.x
11.x
17.x
Go 1.x
Ruby 2.5.x
2.6.x
2.7.x
3.0.x
3.1.x
PHP 7.4.x
8.0.x
8.1.x
.NET Core 3.1.x
6.x
7.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:

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

¿Qué sigue?