

AWS App Runner não estará mais aberto a novos clientes a partir de 30 de abril de 2026. Se você quiser usar o App Runner, inscreva-se antes dessa data. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte [Mudança de disponibilidade do AWS App Runner](https://docs.aws.amazon.com/apprunner/latest/dg/apprunner-availability-change.html).

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Gerenciando suas variáveis de ambiente
<a name="env-variable-manage"></a>

Gerencie as variáveis de ambiente do seu serviço App Runner usando um dos seguintes métodos:
+ [Console do App Runner](#env-variable-manage.console)
+ [API App Runner ou AWS CLI](#env-variable-manage.api)

## Console do App Runner
<a name="env-variable-manage.console"></a>

Ao [criar um serviço](manage-create.md) ou [atualizar um serviço](manage-configure.md) no console do App Runner, você pode adicionar variáveis de ambiente. 

### Adicionando variável de ambiente
<a name="env-variable-manage.console.add"></a>

**Para adicionar uma variável de ambiente**

1. Abra o [console do App Runner](https://console.aws.amazon.com/apprunner) e, na lista **Regiões**, selecione seu Região da AWS.

1. Com base no fato de você estar criando ou atualizando um serviço, execute uma das seguintes etapas:
   + Se você estiver criando um novo serviço, escolha **Criar um serviço App Runner** e acesse **Configurar serviço**.
   +  Se você estiver atualizando um serviço existente, selecione o serviço que deseja atualizar e acesse a guia **Configuração** do serviço. 

1.  Vá para **Variáveis de ambiente - opcional** em **Configurações de serviço**. 

1.  Escolha qualquer uma das opções a seguir com base em sua necessidade: 
   + Escolha **Texto simples** na **fonte da variável de ambiente** e insira seus pares de valores-chave em **Nome da variável de ambiente** e **Valor da variável de ambiente, respectivamente**. 
**nota**  
Escolha **Texto sem formatação** se quiser referenciar dados não confidenciais. Esses dados não são criptografados e são visíveis para outras pessoas na configuração do serviço App Runner e nos registros do aplicativo. 
   + Escolha **Secrets Manager** na **fonte da variável de ambiente** para referenciar o segredo armazenado AWS Secrets Manager como variável de ambiente em seu serviço. Forneça o nome da variável de ambiente e o Nome de recurso da Amazon (ARN) do segredo que você está referenciando em **Nome da variável de ambiente e Valor da variável** de **ambiente**, respectivamente. 
   + Escolha **SSM Parameter Store na** **fonte da variável de ambiente** para referenciar o parâmetro armazenado no SSM Parameter Store como variável de ambiente em seu serviço. Forneça o nome da variável de ambiente e o ARN do parâmetro que você está referenciando em **Nome da variável de ambiente e Valor da variável** de **ambiente**, respectivamente. 
**nota**  
Você não pode atribuir `PORT` como nome uma variável de ambiente ao criar ou atualizar seu serviço App Runner. É uma variável de ambiente reservada para o serviço App Runner. 
 Se o parâmetro SSM Parameter Store estiver no Região da AWS mesmo serviço que você deseja iniciar, você pode especificar o Amazon Resource Name (ARN) completo ou o nome do parâmetro. Se o parâmetro estiver em uma região diferente, você precisará especificar o ARN completo. 
Verifique se o parâmetro ao qual você está se referindo está na mesma conta do serviço que você está lançando ou atualizando. Atualmente, você não pode referenciar o parâmetro SSM Parameter Store em todas as contas. 

1. Escolha **Adicionar variável de ambiente** para fazer referência a outra variável de ambiente. 

1. Expanda os **modelos de política do IAM** para visualizar e copiar os modelos de política do IAM fornecidos para o repositório de parâmetros do SSM AWS Secrets Manager e do SSM. Você só precisa fazer isso se ainda não tiver atualizado a política do IAM da sua função de instância com as permissões necessárias. Para obter mais informações, consulte [Permissões do ](env-variable.md#env-variable.sensitivedata.permissions).

### Removendo a variável de ambiente
<a name="env-variable-manage.console.remove"></a>

Antes de excluir uma variável de ambiente, certifique-se de que o código do aplicativo esteja atualizado para refletir a mesma. Se o código do aplicativo não for atualizado, seu serviço App Runner poderá falhar.

**Para remover variáveis de ambiente**

1. Abra o [console do App Runner](https://console.aws.amazon.com/apprunner) e, na lista **Regiões**, selecione seu Região da AWS.

1.  Vá para a guia **Configuração** do serviço que você deseja atualizar. 

1.  Vá para **Variáveis de ambiente - opcional** em **Configurações de serviço**. 

1.  Escolha **Remover** ao lado da variável de ambiente que você deseja remover. Você recebe uma mensagem para confirmar a exclusão. 

1.  Escolha **Excluir**. 

## API App Runner ou AWS CLI
<a name="env-variable-manage.api"></a>

Você pode referenciar dados confidenciais armazenados no Secrets Manager e no SSM Parameter Store adicionando-os como variáveis de ambiente em seu serviço. 

**nota**  
Atualize a política do IAM da sua função de instância para que o App Runner possa acessar segredos e parâmetros armazenados no Secrets Manager e no SSM Parameter Store. Para obter mais informações, consulte [Permissões do ](env-variable.md#env-variable.sensitivedata.permissions).

**Para referenciar segredos e configurações como variáveis de ambiente**

1. Crie um segredo ou configuração no Secrets Manager ou no SSM Parameter Store. 

   Os exemplos a seguir mostram como criar um segredo e um parâmetro usando o SSM Parameter Store.   
**Example Criando um segredo - Solicitação**  

   O exemplo a seguir mostra como criar um segredo que represente a credencial do banco de dados.

   ```
   aws secretsmanager create-secret \
   —name DevRdsCredentials \
   —description "Rds credentials for development account." \
   —secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
   ```  
**Example Criando um segredo - Resposta**  

   ```
   arn:aws:secretsmanager:<region>:<aws_account_id>:secret:DevRdsCredentials
   ```  
**Example Criando uma configuração - Solicitação**  

   O exemplo a seguir mostra como criar um parâmetro que representa a cadeia de conexão do RDS.

   ```
   aws systemsmanager put-parameter \
   —name DevRdsConnectionString \
   —value "mysql2://dev-mysqlcluster-rds.com:3306/diegor" \
   —type "String" \
   —description "Rds connection string for development account."
   ```  
**Example Criando uma configuração - Resposta**  

   ```
   arn:aws:ssm:<region>:<aws_account_id>:parameter/DevRdsConnectionString
   ```

1. Faça referência aos segredos e configurações que estão armazenados no Secrets Manager e no SSM Parameter Store adicionando-os como variáveis de ambiente. Você pode adicionar variáveis de ambiente ao criar ou atualizar seu serviço App Runner. 

   Os exemplos a seguir mostram como referenciar segredos e configurações como variáveis de ambiente em um serviço App Runner baseado em código e em imagem.  
**Example Arquivo.json de entrada para o serviço App Runner baseado em imagem**  

   ```
   {
     "ServiceName": "example-secrets",
     "SourceConfiguration": {
       "ImageRepository": {
         "ImageIdentifier": "<image-identifier>",
         "ImageConfiguration": {
           "Port": "<port>",
           "RuntimeEnvironmentSecrets": {
             "Credential1":"arn:aws:secretsmanager:<region>:<aws_account_id>:secret:XXXXXXXXXXXX",
             "Credential2":"arn:aws:ssm:<region>:<aws_account_id>:parameter/<parameter-name>"
           }
         },
         "ImageRepositoryType": "ECR_PUBLIC"
       }
     },
     "InstanceConfiguration": {
       "Cpu": "1 vCPU",
       "Memory": "3 GB",
       "InstanceRoleArn": "<instance-role-arn>"
     }
   }
   ```  
**Example Serviço App Runner baseado em imagem — Solicitação**  

   ```
   aws apprunner create-service \
   --cli-input-json file://input.json
   ```  
**Example Serviço App Runner baseado em imagens — Resposta**  

   ```
   {
   ...
         "ImageRepository": {
            "ImageIdentifier":"<image-identifier>",
            "ImageConfiguration":{
               "Port": "<port>",
               "RuntimeEnvironmentSecrets":{
                  "Credential1": "arn:aws:secretsmanager:<region>:<aws_account_id>:secret:XXXXXXXXXXXX",
                  "Credential2": "arn:aws:ssm:<region>:<aws_account_id>:parameter/<parameter-name>"
               },                
               "ImageRepositoryType":"ECR"
         }      
      },
      "InstanceConfiguration": {
           "CPU": "1 vCPU",
           "Memory": "3 GB",
           "InstanceRoleArn: "<instance-role-arn>"
      }
   ...
   }
   ```  
**Example Arquivo.json de entrada para o serviço App Runner baseado em código**  

   ```
   {
     "ServiceName": "example-secrets",
     "SourceConfiguration": {
       "AuthenticationConfiguration": {
         "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/XXXXXXXXXX"
       },
       "AutoDeploymentsEnabled": false,
       "CodeRepository": {
         "RepositoryUrl": "<repository-url>",
         "SourceCodeVersion": {
           "Type": "BRANCH",
           "Value": "main"
         },
         "CodeConfiguration": {
           "ConfigurationSource": "API",
           "CodeConfigurationValues": {
             "Runtime": "<runtime>",
             "BuildCommand": "<build-command>",
             "StartCommand": "<start-command>",
             "Port": "<port>",
             "RuntimeEnvironmentSecrets": {
               "Credential1":"arn:aws:secretsmanager:<region>:<aws_account_id>:secret:XXXXXXXXXXXX",
               "Credential2":"arn:aws:ssm:<region>:<aws_account_id>:parameter/<parameter-name>"
             }
           }
         }
       }
     },
     "InstanceConfiguration": {
       "Cpu": "1 vCPU",
       "Memory": "3 GB",
       "InstanceRoleArn": "<instance-role-arn>"
     }
   }
   ```  
**Example Serviço App Runner baseado em código — Solicitação**  

   ```
   aws apprunner create-service \
   --cli-input-json file://input.json
   ```  
**Example Serviço App Runner baseado em código — Resposta**  

   ```
   {
   ...
      "SourceConfiguration":{
         "CodeRepository":{
            "RepositoryUrl":"<repository-url>",
            "SourceCodeVersion":{
               "Type":"Branch",
               "Value":"main"
            },
            "CodeConfiguration":{
               "ConfigurationSource":"API",
               "CodeConfigurationValues":{
                  "Runtime":"<runtime>",
                  "BuildCommand":"<build-command>",
                  "StartCommand":"<start-command>",
                  "Port":"<port>",               
                  "RuntimeEnvironmentSecrets":{
                     "Credential1" : "arn:aws:secretsmanager:<region>:<aws_account_id>:secret:XXXXXXXX",
                     "Credential2" : "arn:aws:ssm:<region>:<aws_account_id>:parameter/<parameter-name>"
                  } 
               }
            }
         },
         "InstanceConfiguration": {
           "CPU": "1 vCPU",
           "Memory": "3 GB",
           "InstanceRoleArn: "<instance-role-arn>"
      }
   ...
   }
   ```

1. O `apprunner.yaml` modelo é atualizado para refletir os segredos adicionados. 

   Veja a seguir um exemplo do `apprunner.yaml` modelo atualizado.  
**Example `apprunner.yaml`**  

   ```
   version: 1.0
   runtime: python3
   build:
     commands:
       build:
         - python -m pip install flask
   run:
     command: python app.py
     network:
       port: 8080
     env:
       - name: MY_VAR_EXAMPLE
         value: "example"
     secrets:
       - name: my-secret
         value-from: "arn:aws:secretsmanager:<region>:<aws_account_id>:secret:XXXXXXXXXXXX"
       - name: my-parameter
         value-from: "arn:aws:ssm:<region>:<aws_account_id>:parameter/<parameter-name>"
       - name: my-parameter-only-name
         value-from: "parameter-name"
   ```