Entornos de ejecución de lenguajes y imágenes base compatibles

Las imágenes base se componen de una pila de sistema operativo y un entorno de ejecución de lenguaje:

  • Una pila se compone de una versión de distribución de Linux y paquetes del sistema, como OpenSSL y curl.
  • Un entorno de ejecución de lenguaje es la versión específica del lenguaje de programación que usa tu aplicación.

Cloud Run admite varios entornos de ejecución de lenguajes, cada uno de los cuales está disponible a través de imágenes base de contenedores proporcionadas por los paquetes de compilación de Google Cloud. Los entornos de ejecución de lenguajes se admiten solo si son compatibles con sus respectivas comunidades de código abierto.

Es responsabilidad del desarrollador actualizar los servicios a entornos de ejecución de lenguaje más recientes antes de que alcance el fin de la asistencia. Consulta el ciclo de vida del entorno de ejecución de Cloud Run para obtener más información.

La política de ciclo de vida de Cloud Run no se aplica a los contenedores compilados fuera de Cloud Run.

Usa entornos de ejecución de lenguajes

Los entornos de ejecución de lenguaje de Cloud Run se usan para lo siguiente:

Actualizaciones de seguridad y mantenimiento

Las actualizaciones de seguridad y mantenimiento están disponibles para los entornos de ejecución de lenguaje disponibles a nivel general. Puedes aplicar estas actualizaciones de forma automática o manual, según la forma en que configures las actualizaciones de seguridad automáticas. Las actualizaciones de seguridad automáticas se habilitan de forma predeterminada cuando se implementan funciones en Cloud Run.

Cómo obtener imágenes base

Las imágenes base se alojan en todas las regiones en las que Artifact Registry está disponible.

Existen tres métodos para especificar una imagen base:

  • RUNTIME_ID: Te dará la imagen base del lenguaje especificado con su pila predeterminada. La imagen base se tomará de un repositorio en el mismo REGION en el que se implementó tu servicio. Te recomendamos que especifiques RUNTIME_ID en la mayoría de los casos.
  • STACK/RUNTIME_ID: Es un alias para la ruta de acceso completa de la imagen base. La imagen base se tomará de un repositorio en el mismo REGION en el que se implementó tu servicio. Usa esta opción si necesitas un paquete de sistema específico en la pila.
  • REGION-docker.pkg.dev/serverless-runtimes/STACK/runtimes/RUNTIME_ID: Es la ruta de la imagen base completa. Usa esta opción si deseas tener control total sobre la imagen base específica y la región desde la que se descarga.

Para especificar una imagen base en los tres métodos, reemplaza lo siguiente:

  • REGION por la región preferida, por ejemplo, us-central1
  • STACK por la pila preferida del sistema operativo, por ejemplo, google-22-full
  • RUNTIME_ID por el ID del entorno de ejecución de lenguaje que usa la función, por ejemplo, python310

Por ejemplo, usa la siguiente URL para hacer referencia a la ruta de la imagen base completa de la última imagen base de Node.js 20 mediante la pila google-22-full, alojada en us-central1:

us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/nodejs22

Node.js

Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
Node.js 22 nodejs22
  • google-22 (predeterminada)
  • google-22-full
  • google-22/nodejs22
  • google-22-full/nodejs22
  • Node.js 20 nodejs20
  • google-22 (predeterminada)
  • google-22-full
  • google-22/nodejs20
  • google-22-full/nodejs20
  • Node.js 18 nodejs18
  • google-22 (predeterminada)
  • google-22-full
  • google-22/nodejs18
  • google-22-full/nodejs18
  • Node.js 16 nodejs16 google-18-full google-18-full/nodjes16
    Node.js 14 nodejs14 google-18-full google-18-full/nodjes14
    Node.js 12 nodejs12 google-18-full google-18-full/nodjes14
    Node.js 10 nodejs10 google-18-full google-18-full/nodjes10
    Node.js 8 nodejs8 Fuera de servicio Fuera de servicio
    Node.js 6 nodejs6 Fuera de servicio Fuera de servicio

    Python

    Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
    Python 3.12 python312
  • google-22 (predeterminada)
  • google-22-full
  • google-22/python312
  • google-22-full/python312
  • Python 3.11 python311
  • google-22 (predeterminada)
  • google-22-full
  • google-22/python311
  • google-22-full/python311
  • Python 3.10 python310
  • google-22 (predeterminada)
  • google-22-full
  • google-22/python310
  • google-22-full/python310
  • Python 3.9 python39 google-18-full google-18-full/python39
    Python 3.8 python38 google-18-full google-18-full/python38
    Python 3.7 python37 google-18-full google-18-full/python37

    Go

    Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
    Go 1.23
    (solo versión preliminar)
    go123
  • google-22 (predeterminada)
  • google-22-full
  • google-22/go123
  • google-22-full/go123
  • Go 1.22 go122
  • google-22 (predeterminada)
  • google-22-full
  • google-22/go122
  • google-22-full/go122
  • Go 1.21 go121
  • google-22 (predeterminada)
  • google-22-full
  • google-22/go121
  • google-22-full/go121
  • Go 1.20 go120
  • google-22 (predeterminada)
  • google-22-full
  • google-22/go120
  • google-22-full/go120
  • Go 1.19 go119
  • google-22 (predeterminada)
  • google-22-full
  • google-22/go119
  • google-22-full/go119
  • Go 1.18 go118
  • google-22 (predeterminada)
  • google-22-full
  • google-22/go118
  • google-22-full/go120
  • Go 1.16 go116 google-18-full google-18-full/go116
    Go 1.13 go113 google-18-full google-18-full/go113
    Go 1.11 go111 Fuera de servicio Fuera de servicio

    Java

    Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
    Java 21 java21
  • google-22 (predeterminada)
  • google-22-full
  • google-22/java21
  • google-22-full/java21
  • Java 17 java17
  • google-22 (predeterminada)
  • google-22-full
  • google-22/java17
  • google-22-full/java17
  • Java 11 java11 google-18 google-18/java11

    Ruby

    Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
    Ruby 3.3 ruby33
  • google-22 (predeterminada)
  • google-22-full
  • google-22/ruby33
  • google-22-full/ruby33
  • Ruby 3.2 ruby32
  • google-22 (predeterminada)
  • google-22-full
  • google-22/ruby32
  • google-22-full/ruby32
  • Ruby 3.0 ruby30 google-18-full google-18-full/ruby30
    Ruby 2.7 ruby27 google-18-full google-18-full/ruby27
    Ruby 2.6 ruby26 google-18-full google-18-full/ruby26

    PHP

    Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
    PHP 8.3 php83
  • google-22 (predeterminada)
  • google-22-full
  • google-22/php83
  • google-22-full/php83
  • PHP 8.2 php82
  • google-22 (predeterminada)
  • google-22-full
  • google-22/php82
  • google-22-full/php82
  • PHP 8.1 php81 google-18-full google-18-full/php81
    PHP 7.4 php74 google-18-full google-18-full/php74

    .NET Core

    Entorno de ejecución ID de entorno de ejecución Pilas Imagen base del entorno de ejecución
    .NET Core 8 dotnet8
  • google-22 (predeterminada)
  • google-22-full
  • google-22/dotnet8
  • google-22-full/dotnet8
  • .NET Core 6 dotnet6
  • google-22 (predeterminada)
  • google-22-full
  • google-22/dotnet6
  • google-22-full/dotnet6
  • .NET Core 3 dotnet3 google-18-full google-18-full/dotnet3