Les images de base sont composées d'une pile de système d'exploitation et d'un environnement d'exécution de langage :
- Une pile est composée d'une version de distribution Linux et de packages système, comme OpenSSL et
curl
. - L'environnement d'exécution d'un langage correspond à la version spécifique du langage de programmation utilisé par votre application.
Cloud Run est compatible avec plusieurs environnements d'exécution de langage, chacun disponible via des images de base de conteneur fournies par les packs de création Google Cloud. Les environnements d'exécution de langage ne sont compatibles que tant qu'ils sont pris en charge par leurs communautés Open Source respectives.
Il appartient au développeur de mettre à niveau les services vers des environnements d'exécution de langage plus récents avant qu'ils ne soient abandonnés. Pour en savoir plus, consultez le cycle de vie d'exécution de Cloud Run.
La stratégie de cycle de vie de Cloud Run ne s'applique pas aux conteneurs créés en dehors de Cloud Run.
Utiliser des environnements d'exécution de langage
Les environnements d'exécution de langage Cloud Run sont utilisés pour les éléments suivants :
- Déployer des fonctions
- Activer les mises à jour de sécurité automatiques
- En tant qu'images de base pour la création de conteneurs
Mises à jour de sécurité et de maintenance
Les mises à jour de sécurité et de maintenance sont disponibles pour les environnements d'exécution de langage en disponibilité générale. Vous pouvez appliquer ces mises à jour automatiquement ou manuellement, en fonction de la manière dont vous configurez les mises à jour de sécurité automatiques. Les mises à jour de sécurité automatiques sont activées par défaut lors du déploiement de fonctions sur Cloud Run.
Obtenir des images de base
Les images de base sont hébergées dans chaque région où Artifact Registry est disponible.
Il existe trois méthodes pour spécifier une image de base :
RUNTIME_ID
: permet d'obtenir l'image de base pour le langage spécifié à l'aide de sa pile par défaut. L'image de base sera extraite d'un dépôt dans la mêmeREGION
que celle où votre service est déployé. Nous vous recommandons de spécifierRUNTIME_ID
dans la plupart des cas.STACK/RUNTIME_ID
: alias du chemin d'accès complet de l'image de base. L'image de base sera extraite d'un dépôt dans la mêmeREGION
que celle où votre service est déployé. Utilisez cette option si vous avez besoin d'un package système spécifique dans la pile.REGION-docker.pkg.dev/serverless-runtimes/STACK/runtimes/RUNTIME_ID
: chemin d'accès complet à l'image de base. Utilisez cette option si vous souhaitez contrôler entièrement l'image de base spécifique et la région à partir de laquelle elle est téléchargée.
Pour les trois méthodes de spécification d'une image de base, remplacez les éléments suivants :
- REGION par la région souhaitée, par exemple
us-central1
. - STACK par la pile de système d'exploitation souhaitée, par exemple
google-22-full
. - RUNTIME_ID par l'ID de l'environnement d'exécution de langage utilisé par votre fonction, par exemple
python310
.
Par exemple, pour référencer le chemin d'accès complet de l'image de base pour la dernière image de base Node.js 20 à l'aide de la pile google-22-full
, hébergée dans us-central1
, utilisez l'URL suivante :
us-central1-docker.pkg.dev/serverless-runtimes/google-22-full/runtimes/nodejs22
Node.js
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
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 | Hors service | Hors service |
Node.js 6 | nodejs6 | Hors service | Hors service |
Python
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
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
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
Go 1.23 (bêta uniquement) |
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 | Hors service | Hors service |
Java
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
Java 21 | java21 |
|
|
Java 17 | java17 |
|
|
Java 11 | java11 | google-18 | google-18/java11 |
Ruby
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
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
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
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
Exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
---|---|---|---|
.NET Core 8 | dotnet8 |
|
|
.NET Core 6 | dotnet6 |
|
|
.NET Core 3 | dotnet3 | google-18-full | google-18-full/dotnet3 |