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 die Supportzeit abgelaufen ist. 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 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 die automatischen Sicherheitsupdates konfigurieren. Automatische Sicherheitsupdates sind standardmäßig aktiviert, wenn Sie Funktionen in Cloud Run bereitstellen.
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 das jeweilige Basis-Image und die Region, aus der es heruntergeladen wird, vollständig steuern möchten.
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.
python310
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/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 | 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 | google-18/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 |