Votre fonction Cloud Run s'exécute dans un environnement composé d'une version de système d'exploitation avec des packages de modules complémentaires, d'une compatibilité avec les langages et de la bibliothèque Python Functions Framework qui prend en charge et appelle votre fonction. Cet environnement est identifié par la version de langage et est appelé l'ID d'exécution.
Préparation de la fonction
Vous pouvez préparer une fonction directement depuis la console Google Cloud , ou l'écrire sur votre ordinateur local et l'importer. Pour préparer votre ordinateur local pour le développement Python, consultez Configurer un environnement de développement Python.
Environnements d'exécution et images de base Python compatibles
| Environnement d'exécution | ID d'exécution | Piles | Image de base de l'environnement d'exécution |
|---|---|---|---|
| Python 3.14 (bêta) |
python314 |
|
|
| 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 |
Sélectionner votre environnement d'exécution
Vous pouvez sélectionner l'un des environnements d'exécution Python compatibles pour votre fonction lors du déploiement.
Vous pouvez sélectionner une version du runtime à l'aide de la console Google Cloud ou de la gcloud CLI. Cliquez sur l'onglet pour obtenir des instructions concernant l'utilisation de l'outil de votre choix :
gcloud
Spécifiez l'image de base Python pour votre fonction à l'aide du flag --base-image lors du déploiement de votre fonction. Exemple :
gcloud run deploy FUNCTION \
--source . \
--function FUNCTION_ENTRYPOINT \
--base-image python313
Remplacez :
FUNCTION par le nom de la fonction que vous déployez. Vous pouvez omettre ce paramètre, mais dans ce cas le nom vous sera demandé.
FUNCTION_ENTRYPOINT par le point d'entrée de votre fonction dans votre code source. Il s'agit du code que Cloud Run exécute lorsque votre fonction s'exécute. La valeur de cette option doit être un nom de fonction ou un nom de classe complet qui existe dans votre code source.
Pour obtenir des instructions détaillées sur le déploiement d'une fonction à l'aide de la gcloud CLI, consultez Déployer des fonctions dans Cloud Run.
Console
Vous pouvez sélectionner une version d'environnement d'exécution lorsque vous créez ou mettez à jour une fonction Cloud Run dans la console Google Cloud . Pour obtenir des instructions détaillées sur le déploiement d'une fonction, consultez Déployer des fonctions dans Cloud Run.
Pour sélectionner un environnement d'exécution dans la console Google Cloud lorsque vous créez une fonction, procédez comme suit :
Dans la console Google Cloud , accédez à la page Cloud Run :
Cliquez sur Écrire une fonction.
Dans la liste Environnement d'exécution, sélectionnez une version d'environnement d'exécution Python.
Cliquez sur Créer, puis attendez que Cloud Run crée le service à l'aide d'une révision de substitution.
La console vous redirige vers l'onglet Source, où vous pouvez voir le code source de votre fonction. Cliquez sur Enregistrer et redéployer.
Pour obtenir des instructions détaillées sur la mise à jour de la version de l'environnement d'exécution après le déploiement de votre fonction, consultez Redéployer un nouveau code source.
Structure du code source
Pour que Cloud Run Functions trouve la définition de votre fonction, votre code source doit respecter une structure spécifique. Pour en savoir plus, consultez Écrire des fonctions Cloud Run.
Spécifier des dépendances
Il existe plusieurs façons de spécifier des dépendances pour les fonctions Cloud Run en Python : utiliser le fichier requirements.txt d'un gestionnaire de packages, configurer un fichier pyproject.toml comme fichier de définition de projet standard ou empaqueter les dépendances locales avec votre fonction. Pour en savoir plus, consultez Spécifier des dépendances en Python.
Cloud Run Functions ne permet pas de spécifier des dépendances avec Pipfile/Pipfile.lock. Votre projet ne doit donc pas contenir ces fichiers.
Variables d'environnement
Votre environnement d'exécution Python définit automatiquement certaines variables d'environnement pour que votre fonction puisse les utiliser si nécessaire. Pour en savoir plus, consultez Configurer des variables d'environnement.