Auf dieser Seite werden die unterstützten Sprachlaufzeiten und Basis-Images für das Bereitstellen von Diensten oder Funktionen aus der Quelle und von Grund auf erstellte Container-Images beschrieben.
Basis-Images bestehen aus einem Betriebssystemstack 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-Communitys unterstützt werden.
Es liegt in der Verantwortung des Entwicklers, Dienste auf neuere Sprachlaufzeiten umzustellen, bevor der Support eingestellt wird. Weitere Informationen finden Sie im Cloud Run-Laufzeitlebenszyklus.
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 in den meisten Fällen, dieRUNTIME_ID
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 jeweilige 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.
us-central1
- 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 Pfad des Basis-Images für das neueste Node.js 20-Basis-Image mit dem google-22-full
-Stack verweisen möchten, das in us-central1
gehostet wird, verwenden Sie die folgende URL:
us-central1-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.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 (nur Vorabversion) |
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.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.3 | php83 |
|
|
PHP 8.2 | 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
Laufzeit | Laufzeit-ID | Stacks | Laufzeit-Basis-Image |
---|---|---|---|
.NET Core 8 | dotnet8 |
|
|
.NET Core 6 | dotnet6 |
|
|
.NET Core 3 | dotnet3 | google-18-full | google-18-full/dotnet3 |