Auf dieser Seite werden die unterstützten Sprachlaufzeiten und Basis-Images für die Bereitstellung von Diensten oder Funktionen aus dem Quellcode und Container-Images, die auf Scratch basieren, beschrieben.
Basis-Images bestehen aus einem Betriebssystem-Stack und einer Sprachlaufzeit:
- Ein Stack besteht aus einer Linux-Distributionsversion und Systempaketen wie OpenSSL und
curl
. - Eine Sprachlaufzeit ist die spezifische Version der Programmiersprache, die von Ihrer Anwendung verwendet wird.
Cloud Run unterstützt mehrere Sprachlaufzeiten, die jeweils über Container-Basis-Images verfügbar sind, die von den Buildpacks von Google Cloud bereitgestellt werden. Sprachlaufzeiten werden nur so lange unterstützt, wie sie von den jeweiligen Open-Source-Communities unterstützt werden.
Entwickler sind dafür verantwortlich, Dienste auf neuere Sprachlaufzeiten zu aktualisieren, bevor der Support eingestellt wird. Weitere Informationen finden Sie im Laufzeitlebenszyklus von Cloud Run.
Die Cloud Run-Lebenszyklusrichtlinie gilt nicht für Container, die außerhalb von Cloud Run erstellt wurden.
Sprachlaufzeiten verwenden
Cloud Run-Sprachlaufzeiten werden für Folgendes verwendet:
- Funktionen und Dienste bereitstellen
- Automatische Sicherheitsupdates aktivieren
- Als Basis-Images zum Erstellen von Containern
Sicherheits- und Wartungsupdates
Sicherheits- und Wartungsupdates sind für allgemein verfügbare Sprachlaufzeiten verfügbar. Sie können diese Updates automatisch oder manuell anwenden, je nachdem, wie Sie automatische Sicherheitsupdates konfigurieren. Automatische Sicherheitsupdates sind standardmäßig aktiviert, wenn Funktionen und Dienste in Cloud Run bereitgestellt werden.
Basis-Images abrufen
Basis-Images werden in jeder Region gehostet, in der Artifact Registry verfügbar ist.
Es gibt drei Methoden zum Angeben eines Basis-Images:
RUNTIME_ID
: Gibt das Basis-Image für die angegebene Sprache mit dem Standard-Stack an. Das Basis-Image wird aus einem Repository in derselbenREGION
stammen, in der Ihr Dienst bereitgestellt wird. Wir empfehlen, dieRUNTIME_ID
in den meisten Fällen anzugeben.STACK/RUNTIME_ID
: Ein Alias für den vollständigen Pfad zum Basis-Image. Das Basis-Image wird aus einem Repository in derselbenREGION
stammen, in der Ihr Dienst bereitgestellt wird. Verwenden Sie diese Option, wenn Sie ein bestimmtes Systempaket im Stack benötigen.REGION-docker.pkg.dev/serverless-runtimes/STACK/runtimes/RUNTIME_ID
: Der vollständige Pfad zum Basis-Image. Verwenden Sie diese Option, wenn Sie die vollständige Kontrolle über das spezifische Basis-Image und die Region haben möchten, aus der es heruntergeladen wird.
Ersetzen Sie bei den drei Methoden zum Angeben eines Basis-Images Folgendes:
- REGION durch die gewünschte Region, z. B.
europe-west1
- STACK mit dem bevorzugten Betriebssystemstack, z. B.
google-22-full
. - RUNTIME_ID durch die von der Funktion verwendete Sprachlaufzeit-ID, z. B.
nodejs22
Wenn Sie beispielsweise auf den vollständigen Basis-Image-Pfad für das neueste Node.js 20-Basis-Image mit dem google-22-full
-Stack verweisen möchten, das in europe-west1
gehostet wird, verwenden Sie die folgende URL:
europe-west1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/nodejs22
Node.js
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
Node.js 22 | nodejs22 |
|
|
Node.js 20 | nodejs20 |
|
|
Node.js 18 | nodejs18 |
|
|
Node.js 16 | nodejs16 | google-18-full | google-18-full/nodejs16 |
Node.js 14 | nodejs14 | google-18-full | google-18-full/nodejs14 |
Node.js 12 | nodejs12 | google-18-full | google-18-full/nodejs12 |
Node.js 10 | nodejs10 | google-18-full | google-18-full/nodejs10 |
Node.js 8 | nodejs8 | Außer Betrieb genommen | Außer Betrieb genommen |
Node.js 6 | nodejs6 | Außer Betrieb genommen | Außer Betrieb genommen |
Python
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
Python 3.13 | python313 |
|
|
Python 3.12 | python312 |
|
|
Python 3.11 | python311 |
|
|
Python 3.10 | 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
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
Go 1.23 |
go123 |
|
|
Go 1.22 | go122 |
|
|
Go 1.21 | go121 |
|
|
Go 1.20 | go120 |
|
|
Go 1.19 | go119 |
|
|
Go 1.18 | go118 |
|
|
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 | Außer Betrieb genommen | Außer Betrieb genommen |
Java
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
Java 21 | java21 |
|
|
Java 17 | java17 |
|
|
Java 11 | java11 | google-18-full | google-18-full/java11 |
Ruby
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
Ruby 3.4 | ruby34 |
|
|
Ruby 3.3 | ruby33 |
|
|
Ruby 3.2 | 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
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-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
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
.NET 8 | dotnet8 |
|
|
.NET 6 | dotnet6 |
|
|
.NET Core 3 | dotnet3 | google-18-full | google-18-full/dotnet3 |