Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Nesta página, descrevemos como especificar o ambiente de execução das instâncias do Cloud Run. Por padrão, os serviços do Cloud Run não têm um ambiente de execução especificado. Isso significa que o Cloud Run seleciona o ambiente de execução com base nos recursos usados. Se você não especificar um ambiente de execução para o serviço, o Cloud Run poderá selecionar o ambiente de primeira ou segunda geração.
Os jobs do Cloud Run usam apenas o ambiente de execução
de segunda geração, e isso não pode ser alterado em jobs.
Consulte a documentação do conceito de ambientes de execução
para receber assistência na escolha do ambiente que é melhor para
seu serviço.
Funções exigidas
Para receber as permissões necessárias para configurar e implantar os serviços do Cloud Run,
peça ao administrador para conceder a você os
seguintes papéis do IAM:
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem essa configuração de modo automático,
a menos que você faça atualizações explícitas para alterar esse comportamento.
O padrão para serviços do Cloud Run é não especificado, o que significa
que o Cloud Run seleciona um ambiente de execução adequado.
Outra opção é especificar um ambiente de execução. Para usar a segunda geração,
especifique pelo menos 512 MiB de memória.
Clique em Implantar contêiner e selecione Serviço para configurar um
novo serviço. Se você estiver configurando um
serviço atual, clique nele e em Editar e implantar nova revisão.
Ao configurar um novo serviço, preencha a página inicial de configurações
de serviço conforme preferir e clique em Contêineres, volumes, redes e segurança para
expandir essa página.
Clique na guia Contêiner.
Selecione o ambiente de execução desejado usando os
botões de opção. Mantenha "Padrão" para permitir que o Cloud Run selecione um ambiente de execução adequado.
Substitua SERVICE pelo nome do serviço e ENVIRONMENT
pelo ambiente de execução desejado. Especifique o valor gen1 para a primeira
geração ou gen2 para a segunda geração.
Também é possível definir o ambiente de execução durante a
implantação usando o comando:
IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo, us-docker.pkg.dev/cloudrun/container/hello:latest. Se você usa o Artifact Registry,
o repositórioREPO_NAME já
precisará ter sido criado. O URL tem o formato LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
ENVIRONMENT pelo ambiente de execução
desejado. Especifique o valor gen1 para a primeira geração ou gen2 para a segunda geração.
YAML
Se você estiver criando um novo serviço, pule esta etapa.
Se você estiver atualizando um serviço existente, faça o download da configuração YAML correspondente:
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2024-12-05 UTC."],[],[],null,["# Select an execution environment for services\n\nThis page describes how to specify the [execution environment](/run/docs/about-execution-environments) of\nCloud Run instances. Cloud Run services by default don't\nhave an execution environment specified, which means Cloud Run selects\nthe execution environment based on the features used. If you don't specify an\nexecution environment for your service, Cloud Run can select either the\nfirst generation or the second generation environment.\n\nNote that Cloud Run jobs only use the second generation\nexecution environment, and this cannot be changed for jobs.\n\nConsult the [execution environments](/run/docs/about-execution-environments) concept\ndocumentation for assistance in choosing the environment that is best for your\nservice.\n\nRequired roles\n--------------\n\n\nTo get the permissions that\nyou need to configure and deploy Cloud Run services,\n\nask your administrator to grant you the\nfollowing IAM roles:\n\n- [Cloud Run Developer](/iam/docs/roles-permissions/run#run.developer) (`roles/run.developer`) on the Cloud Run service\n- [Service Account User](/iam/docs/roles-permissions/iam#iam.serviceAccountUser) (`roles/iam.serviceAccountUser`) on the service identity\n\n\nIf you are deploying a [service](/run/docs/deploying-source-code#required_roles)\nor [function](/run/docs/deploy-functions#required-roles) from source code, you\nmust also have additional roles granted to you on your project and\nCloud Build service account.\n\nFor a list of IAM roles and permissions that are associated with\nCloud Run, see\n[Cloud Run IAM roles](/run/docs/reference/iam/roles)\nand [Cloud Run IAM permissions](/run/docs/reference/iam/permissions).\nIf your Cloud Run service interfaces with\nGoogle Cloud APIs, such as Cloud Client Libraries, see the\n[service identity configuration guide](/run/docs/configuring/services/service-identity).\nFor more information about granting roles, see\n[deployment permissions](/run/docs/reference/iam/roles#additional-configuration)\nand [manage access](/iam/docs/granting-changing-revoking-access).\n\nSet and update execution environment\n------------------------------------\n\nAny configuration change leads to the\ncreation of a new revision. Subsequent revisions will also automatically get\nthis configuration setting unless you make explicit updates to change it.\n\nThe default for Cloud Run services is *unspecified* , which means\nthat Cloud Run selects a suitable execution environment.\nAlternatively, you can specify an execution environment. To use second generation,\nyou must [specify at least 512 MiB of memory](/run/docs/configuring/services/memory-limits).\n\nYou can set the execution environment using the Google Cloud console, the gcloud\ncommand line, or a YAML file when you [create a new service](/run/docs/deploying#service) or\n[deploy a new revision](/run/docs/deploying#revision): \n\n### Console\n\n\n1. In the Google Cloud console, go to Cloud Run:\n\n [Go to Cloud Run](https://console.cloud.google.com/run)\n2. Select **Services** from the menu, and click **Deploy container** to\n configure a new service.\n If you are configuring an existing service, click the\n service, then click **Edit and deploy new revision**.\n\n3. If you are configuring a new service, fill out the initial service\n settings page, then click **Container(s), Volumes, Networking, Security** to expand the\n service configuration page.\n\n4. Click the **Container** tab.\n\n - Select the desired execution environment using the option buttons. Keep \"Default\" to let Cloud Run select a suitable execution environment.\n5. Click **Create** or **Deploy**.\n\n### gcloud\n\nYou can [update the execution environment](/sdk/gcloud/reference/run/services/update)\nfor a given service by using the following command:\n\n\u003cbr /\u003e\n\n```bash\ngcloud run services update SERVICE --execution-environment ENVIRONMENT\n```\n\n\u003cbr /\u003e\n\nReplace \u003cvar translate=\"no\"\u003eSERVICE\u003c/var\u003e with the name of your service and \u003cvar translate=\"no\"\u003eENVIRONMENT\u003c/var\u003e\nwith the desired execution environment. Specify the value `gen1` for first\ngeneration or `gen2` for second generation.\n\nYou can also set the execution environment during\n[deployment](/sdk/gcloud/reference/run/deploy) using the command:\n\n\u003cbr /\u003e\n\n```bash\ngcloud run deploy --image IMAGE_URL --execution-environment ENVIRONMENT\n```\n\n\u003cbr /\u003e\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eIMAGE_URL\u003c/var\u003e: a reference to the container image, for example, `us-docker.pkg.dev/cloudrun/container/hello:latest`. If you use Artifact Registry, the [repository](/artifact-registry/docs/repositories/create-repos#docker) \u003cvar translate=\"no\"\u003eREPO_NAME\u003c/var\u003e must already be created. The URL follows the format of \u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e`-docker.pkg.dev/`\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e`/`\u003cvar translate=\"no\"\u003eREPO_NAME\u003c/var\u003e`/`\u003cvar translate=\"no\"\u003ePATH\u003c/var\u003e`:`\u003cvar translate=\"no\"\u003eTAG\u003c/var\u003e .\n- \u003cvar translate=\"no\"\u003eENVIRONMENT\u003c/var\u003e: the desired execution environment. Specify the value `gen1` for first generation or `gen2` for second generation.\n\n### YAML\n\n1. If you are creating a new service, skip this step.\n If you are updating an existing service, download its [YAML configuration](/run/docs/reference/yaml/v1):\n\n ```bash\n gcloud run services describe SERVICE --format export \u003e service.yaml\n ```\n2. set the `run.googleapis.com/execution-environment` annotation:\n\n ```yaml\n apiVersion: serving.knative.dev/v1\n kind: Service\n metadata:\n name: SERVICE\n spec:\n template:\n metadata:\n annotations:\n run.googleapis.com/execution-environment: ENVIRONMENT\n ```\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eSERVICE\u003c/var\u003e: the name of your Cloud Run service.\n - \u003cvar translate=\"no\"\u003eENVIRONMENT\u003c/var\u003e: the selected execution environment. Specify the value `gen1` for first generation or `gen2` for second generation.\n\n Remove the `run.googleapis.com/execution-environment` annotation for the\n default behavior.\n3. Create or update the service using the following command:\n\n ```bash\n gcloud run services replace service.yaml\n ```\n\n### Terraform\n\n\u003cbr /\u003e\n\nTo learn how to apply or remove a Terraform configuration, see\n[Basic Terraform commands](/docs/terraform/basic-commands).\nAdd the following to a [`google_cloud_run_v2_service`](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/cloud_run_v2_service) resource in your Terraform configuration: \n\n\u003cbr /\u003e\n\n resource \"google_cloud_run_v2_service\" \"default\" {\n name = \"cloudrun-service-execution-environment\"\n location = \"\u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e\"\n\n template {\n containers {\n image = \"us-docker.pkg.dev/cloudrun/container/hello\"\n }\n execution_environment = \"\u003cvar translate=\"no\"\u003eENVIRONMENT\u003c/var\u003e\"\n }\n }\n\nReplace the following:\n\n- \u003cvar translate=\"no\"\u003eREGION\u003c/var\u003e: the Google Cloud region. For example, `europe-west1`.\n- \u003cvar translate=\"no\"\u003eENVIRONMENT\u003c/var\u003e: `EXECUTION_ENVIRONMENT_GEN1` for first generation, or `EXECUTION_ENVIRONMENT_GEN2` for second generation.\n\nView Execution environment settings\n-----------------------------------\n\nTo view the current Execution environment settings for your\nCloud Run service: \n\n### Console\n\n1. In the Google Cloud console, go to Cloud Run:\n\n [Go to Cloud Run](https://console.cloud.google.com/run)\n2. Click the service you are interested in to open the **Service details**\n page.\n\n3. Click the **Revisions** tab.\n\n4. In the details panel at the right, the Execution environment setting\n is listed under the **Container** tab.\n\n### gcloud\n\n1. Use the following command:\n\n ```bash\n gcloud run services describe SERVICE\n ```\n2. Locate the Execution environment setting in the returned\n configuration."]]