Il runtime .NET

La funzione Cloud Run viene eseguita in un ambiente costituito da una versione del sistema operativo con pacchetti aggiuntivi, supporto linguistico e la libreria .NET Functions Framework che supporta e richiama la funzione. Questo ambiente viene identificato dalla versione della lingua ed è noto come ID runtime.

Preparazione della funzione

Puoi preparare una funzione direttamente dalla console Google Cloud o scriverla sulla tua macchina locale e caricarla. Per preparare la tua macchina locale per lo sviluppo .NET, consulta Configurare un ambiente di sviluppo .NET.

Runtime e immagini di base .NET supportati

Runtime ID runtime Serie Immagine di base del runtime
.NET Core 8 dotnet8
  • google-22 (valore predefinito)
  • google-22-full
  • google-22/dotnet8
  • google-22-full/dotnet8
  • .NET Core 6 dotnet6
  • google-22 (valore predefinito)
  • google-22-full
  • google-22/dotnet6
  • google-22-full/dotnet6
  • .NET Core 3 dotnet3 google-18-full google-18-full/dotnet3

    Pacchetto di modelli

    Il pacchetto di modelli ti aiuta a creare nuove funzioni. Per utilizzarla:

    1. Installa l'SDK.NET.

    2. Installa il pacchetto del modello:

      dotnet new install Google.Cloud.Functions.Templates
      

    I modelli sono forniti per i tre tipi di funzioni in C# (valore predefinito), F# e Visual Basic. Quando crei un nuovo progetto da un modello, specifica -lang f# per creare un progetto F# o -lang vb per creare un progetto Visual Basic.

    Seleziona il runtime

    Quando esegui il deployment della funzione, devi specificare un runtime .NET corrispondente al framework di destinazione nel file del progetto (MyFunction.csproj o simile). Durante il deployment puoi selezionare uno dei runtime .NET supportati per la tua funzione.

    Puoi selezionare una versione di runtime utilizzando la console Google Cloud o gcloud CLI. Fai clic sulla scheda per leggere le istruzioni sull'utilizzo dello strumento scelto:

    gcloud

    Specifica l'immagine di base.NET per la funzione utilizzando il flag --base-image, durante il deployment della funzione. Ad esempio:

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

    Sostituisci:

    • FUNCTION con il nome della funzione di cui stai eseguendo il deployment. Puoi omettere del tutto questo parametro, ma se lo fai ti verrà chiesto il nome.

    • FUNCTION_ENTRYPOINT con il punto di ingresso della funzione nel codice sorgente. Questo è il codice che Cloud Run esegue quando viene eseguita la funzione. Il valore di questo flag deve essere un nome di funzione o un nome di classe completamente qualificato esistente nel codice sorgente.

    Per istruzioni dettagliate sul deployment di una funzione utilizzando l'interfaccia a riga di comando gcloud, consulta Eseguire il deployment di funzioni in Cloud Run.

    Console

    Puoi selezionare una versione del runtime quando crei o aggiorni una funzione Cloud Run nella console Google Cloud. Per istruzioni dettagliate sul deployment di una funzione, consulta Eseguire il deployment di funzioni in Cloud Run.

    Per selezionare un runtime nella console Google Cloud quando crei una funzione:

    1. Nella console Google Cloud, vai alla pagina Cloud Run:

      Vai a Cloud Run

    2. Fai clic su Scrivi una funzione.

    3. Nell'elenco Runtime, seleziona una versione del runtime .NET.

    4. Fai clic su Crea e attendi che Cloud Run crei il servizio utilizzando una revisione segnaposto.

    5. La console ti reindirizzerà alla scheda Origine, dove potrai visualizzare il codice sorgente della funzione. Fai clic su Salva e ridistribuisci.

    Per istruzioni dettagliate su come aggiornare la versione del runtime dopo il deployment della funzione, consulta Eseguire nuovamente il deployment del nuovo codice sorgente.

    Struttura del codice sorgente

    Affinché le funzioni Cloud Run trovino la definizione della funzione, il codice sorgente deve seguire una struttura specifica. Per ulteriori informazioni, consulta Scrivere funzioni Cloud Run.

    Specifica delle dipendenze

    Le funzioni .NET Cloud Run utilizzano file di progetto Microsoft Build Engine (MSBuild) che sono fondamentali per il processo di compilazione e deployment. Puoi specificare le dipendenze per la tua funzione in un file di progetto. Per C# l'estensione del file è .csproj, per F# è .fsproj e per Visual Basic è .vbproj.

    Per ulteriori informazioni sulle dipendenze e su altri tipi di personalizzazione, consulta Personalizzazione tramite i classi di avvio di Functions.