O ambiente de execução do .NET

A função do Cloud Run é executada em um ambiente que consiste em uma versão do sistema operacional com pacotes complementares, suporte a linguagens e a biblioteca .NET Functions Framework que dá suporte e invoca a função. Esse ambiente é identificado pela versão da linguagem e é conhecido como ID de execução.

Preparação de funções

É possível preparar uma função diretamente do console do Google Cloud ou gravá-la na máquina local e fazer upload dela. Para preparar a máquina local para desenvolvimento do .NET, consulte Configurar um ambiente de desenvolvimento do .NET.

Ambientes de execução e imagens de base do .NET com suporte

Ambiente de execução ID do ambiente de execução Pilhas Imagem de base do ambiente de execução
.NET Core 8 dotnet8
  • google-22 (padrão)
  • google-22-full
  • google-22/dotnet8
  • google-22-full/dotnet8
  • .NET Core 6 dotnet6
  • google-22 (padrão)
  • google-22-full
  • google-22/dotnet6
  • google-22-full/dotnet6
  • .NET Core 3 dotnet3 google-18-full google-18-full/dotnet3

    Pacote de modelos

    O pacote de modelos ajuda a criar novas funções. Para usá-lo:

    1. Instale o SDK .NET.

    2. Instale o pacote de modelos:

      dotnet new install Google.Cloud.Functions.Templates
      

    Os modelos são fornecidos para os três tipos de funções em C# (padrão), F# e Visual Basic. Ao criar um novo projeto usando um modelo, especifique -lang f# para criar um projeto F# ou -lang vb para criar um projeto Visual Basic.

    Selecionar o ambiente de execução

    Ao implantar a função, você precisa especificar um ambiente de execução do .NET correspondente ao framework de destino no arquivo do projeto (MyFunction.csproj ou semelhante). Selecione um dos ambientes de execução do .NET compatíveis para a função durante a implantação.

    É possível selecionar uma versão do ambiente de execução usando o console do Google Cloud ou a CLI gcloud. Clique na guia para conferir instruções sobre como usar a ferramenta de sua preferência:

    gcloud

    Especifique a imagem de base do.NET para a função usando a flag --base-image durante a implantação. Exemplo:

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

    Substitua:

    • FUNCTION pelo nome da função que você está implantando. É possível omitir esse parâmetro inteiramente, mas será solicitado o nome, se você omiti-lo.

    • FUNCTION_ENTRYPOINT: o ponto de entrada da função no código-fonte. Esse é o código que o Cloud Run executa quando é executada. O valor dessa sinalização precisa ser um nome de função ou de classe totalmente qualificada no código-fonte.

    Para instruções detalhadas sobre como implantar uma função usando a CLI gcloud, consulte Implantar funções no Cloud Run.

    Console

    É possível selecionar uma versão do ambiente de execução ao criar ou atualizar uma função do Cloud Run no console do Google Cloud. Para instruções detalhadas sobre como implantar uma função, consulte Implantar funções no Cloud Run.

    Para selecionar um ambiente de execução no console do Google Cloud ao criar uma função, siga estas etapas:

    1. No console do Google Cloud, acesse a página do Cloud Run:

      Acessar o Cloud Run

    2. Clique em Escrever uma função.

    3. Na lista Ambiente de execução, selecione uma versão do ambiente de execução do .NET.

    4. Clique em Criar e aguarde o Cloud Run criar o serviço usando uma revisão do marcador de posição.

    5. O console vai redirecionar você para a guia Origem, em que você pode ver o código-fonte da sua função. Clique em Salvar e implantar novamente.

    Para instruções detalhadas sobre como atualizar a versão do ambiente de execução depois que a função for implantada, consulte Reimplantar o novo código-fonte.

    Estrutura do código-fonte

    Para que as funções do Cloud Run encontrem a definição da sua função, seu código-fonte precisa seguir uma estrutura específica. Consulte Escrever funções do Cloud Run para mais informações.

    Como especificar dependências

    O Cloud Run functions para .NET usa arquivos de projeto do Microsoft Build Engine (MSBuild), que são essenciais para o processo de build e implantação. É possível especificar dependências para a função em um arquivo de projeto. Para C#, a extensão de arquivo é .csproj, para F# é .fsproj e para Visual Basic é .vbproj.

    Para ler mais sobre dependências e outros tipos de personalização, consulte Personalização usando classes de inicialização do Functions.