Environnement d'exécution Python

Votre fonction Cloud Run s'exécute dans un environnement composé d'une version de système d'exploitation avec des packages complémentaires, d'une compatibilité avec les langages et de la bibliothèque du framework des fonctions Python compatible avec votre fonction. Cet environnement est identifié par la version de langage et est appelé 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.12 python312
  • google-22 (par défaut)
  • google-22-full
  • google-22/python312
  • google-22-full/python312
  • Python 3.11 python311
  • google-22 (par défaut)
  • google-22-full
  • google-22/python311
  • google-22-full/python311
  • Python 3.10 python310
  • google-22 (par défaut)
  • google-22-full
  • google-22/python310
  • google-22-full/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 d'exécution à 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 de l'option --base-image lorsque vous déployez votre fonction. Exemple :

    gcloud beta run deploy FUNCTION \
        --source . \
        --function FUNCTION_ENTRYPOINT \
        --base-image python312
    

    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 est exécutée. 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 CLI gcloud, 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:

    1. Dans la console Google Cloud, accédez à la page Cloud Run :

      Accédez à Cloud Run

    2. Cliquez sur Écrire une fonction.

    3. Dans la liste Environnement d'exécution, sélectionnez une version d'environnement d'exécution Python.

    4. Cliquez sur Créer, puis attendez que Cloud Run crée le service à l'aide d'une révision d'espace réservé.

    5. La console vous redirigera vers l'onglet Source, où vous pourrez 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 d'exécution après le déploiement de votre fonction, consultez la section Redéployer le 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 la page Écrire des fonctions Cloud Run.

    Spécifier des dépendances

    Il existe deux manières de spécifier des dépendances pour les fonctions Cloud Run rédigées en Python: en utilisant le fichier requirements.txt du gestionnaire de paquets pip ou en empaquetant les dépendances locales avec votre fonction. Pour en savoir plus, consultez la section Spécifier des dépendances en Python.

    Les fonctions Cloud Run ne permettent pas de spécifier des dépendances avec Pipfile/Pipfile.lock. Par conséquent, votre projet ne doit pas inclure 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.