Supported language runtimes and base images

This page describes the supported language runtimes and base images for deploying services or functions from source, and container images built on scratch .

Base images are composed of an operating system stack and a language runtime:

  • A stack is made up of a Linux distribution version and system packages, such as OpenSSL and curl .
  • A language runtime is the specific version of the programming language used by your application.

Cloud Run supports multiple language runtimes, each of which is available through container base images provided by Google Cloud's buildpacks . Language runtimes are supported only as long as they are supported by their respective open source communities.

It is the developer's responsibility to upgrade services to newer language runtimes before it reaches end of support. Refer to the Cloud Run runtime lifecycle for details.

The Cloud Run lifecycle policy does not apply to containers built outside of Cloud Run.

Using language runtimes

Cloud Run language runtimes are used for the following:

Security and maintenance updates

Security and maintenance updates are available for generally available language runtimes. You can apply these updates automatically or manually depending on how you configure automatic security updates . Automatic security updates are enabled by default when deploying functions and services to Cloud Run.

How to obtain base images

Base images are hosted in every region where Artifact Registry is available .

There are three methods for specifying a base image:

  • RUNTIME_ID : Gives you the base image for the specified language using its default stack. The base image will be taken from a repository in the same REGION where your service is deployed. We recommend you specify the RUNTIME_ID for most cases.
  • STACK / RUNTIME_ID : An alias for the full base image path. The base image will be taken from a repository in the same REGION where your service is deployed. Use this option if you need a specific system package in the stack .
  • REGION -docker.pkg.dev/serverless-runtimes/ STACK /runtimes/ RUNTIME_ID : The full base image path. Use this option if you want full control over the specific base image and the region where it's downloaded from.

For the three methods for specifying a base image, replace:

  • REGION with the preferred region, for example europe-west1 .
  • STACK with the preferred operating system stack , for example google-22-full .
  • RUNTIME_ID with the language runtime ID used by your function, for example nodejs22 .

For example, to reference the full base image path for the latest Node.js 20 base image using the google-22-full stack, hosted in europe-west1 , use the following URL:

europe-west1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/nodejs22

Node.js

Runtime
Runtime ID
Stacks
Runtime base image
Node.js 24
(Preview only)
nodejs24
  • google-24 (default)
  • google-24-full
  • Node.js 22
    nodejs22
  • google-22 (default)
  • google-22-full
  • Node.js 20
    nodejs20
  • google-22 (default)
  • google-22-full
  • Node.js 18
    nodejs18
  • google-22 (default)
  • google-22-full
  • Node.js 16
    nodejs16
    google-18-full
    Node.js 14
    nodejs14
    google-18-full
    Node.js 12
    nodejs12
    google-18-full
    Node.js 10
    nodejs10
    google-18-full
    Node.js 8
    nodejs8
    Decommissioned
    Decommissioned
    Node.js 6
    nodejs6
    Decommissioned
    Decommissioned

    Python

    Runtime
    Runtime ID
    Stacks
    Runtime base image
    Python 3.13
    python313
  • google-22 (default)
  • google-22-full
  • Python 3.12
    python312
  • google-22 (default)
  • google-22-full
  • Python 3.11
    python311
  • google-22 (default)
  • google-22-full
  • Python 3.10
    python310
  • google-22 (default)
  • google-22-full
  • Python 3.9
    python39
    google-18-full
    Python 3.8
    python38
    google-18-full
    Python 3.7
    python37
    google-18-full

    Go

    Runtime
    Runtime ID
    Stacks
    Runtime base image
    Go 1.25
    go125
  • google-22 (default)
  • google-22-full
  • Go 1.24
    go124
  • google-22 (default)
  • google-22-full
  • Go 1.23
    go123
  • google-22 (default)
  • google-22-full
  • Go 1.22
    go122
  • google-22 (default)
  • google-22-full
  • Go 1.21
    go121
  • google-22 (default)
  • google-22-full
  • Go 1.20
    go120
  • google-22 (default)
  • google-22-full
  • Go 1.19
    go119
  • google-22 (default)
  • google-22-full
  • Go 1.18
    go118
  • google-22 (default)
  • google-22-full
  • Go 1.16
    go116
    google-18-full
    Go 1.13
    go113
    google-18-full
    Go 1.11
    go111
    Decommissioned
    Decommissioned

    Java

    Runtime
    Runtime ID
    Stacks
    Runtime base image
    Java 21
    java21
  • google-22 (default)
  • google-22-full
  • Java 17
    java17
  • google-22 (default)
  • google-22-full
  • Java 11
    java11
    google-18-full

    Ruby

    Runtime
    Runtime ID
    Stacks
    Runtime base image
    Ruby 3.4
    ruby34
  • google-22 (default)
  • google-22-full
  • Ruby 3.3
    ruby33
  • google-22 (default)
  • google-22-full
  • Ruby 3.2
    ruby32
  • google-22 (default)
  • google-22-full
  • Ruby 3.0
    ruby30
    google-18-full
    Ruby 2.7
    ruby27
    google-18-full
    Ruby 2.6
    ruby26
    google-18-full

    PHP

    Runtime Runtime ID Stacks Runtime base image
    PHP 8.4
    php84 google-22-full (default) google-22-full/php84
    PHP 8.3
    php83 google-22-full (default) google-22-full/php83
    PHP 8.2
    php82 google-22-full (default) 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

    Runtime
    Runtime ID
    Stacks
    Runtime base image
    .NET 8
    dotnet8
  • google-22 (default)
  • google-22-full
  • .NET 6
    dotnet6
  • google-22 (default)
  • google-22-full
  • .NET Core 3
    dotnet3
    google-18-full
    Design a Mobile Site
    View Site in Mobile | Classic
    Share by: