

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á.

# Usar a plataforma Python do
<a name="service-source-code-python"></a>

**Importante**  
O App Runner encerrará o suporte para **Python 3.7 **e Python**** 3.8 em 1º de dezembro de 2025. Para obter recomendações e mais informações, consulte[Fim do suporte para versões de tempo de execução gerenciado](service-source-code.md#service-source-code.managed-platforms.eos).

A plataforma AWS App Runner Python fornece tempos de execução gerenciados. Cada tempo de execução facilita a criação e a execução de contêineres com aplicativos web baseados em uma versão do Python. Quando você usa um tempo de execução do Python, o App Runner começa com uma imagem gerenciada do tempo de execução do Python. Essa imagem é baseada na [imagem Docker do Amazon Linux](https://hub.docker.com/_/amazonlinux) e contém o pacote de tempo de execução para uma versão do Python e algumas ferramentas e pacotes de dependências populares. O App Runner usa essa imagem de tempo de execução gerenciada como imagem base e adiciona o código do aplicativo para criar uma imagem do Docker. Em seguida, ele implanta essa imagem para executar seu serviço web em um contêiner.

 Você especifica um tempo de execução para seu serviço App Runner ao [criar um serviço](manage-create.md) usando o console do App Runner ou a operação da [CreateService](https://docs.aws.amazon.com/apprunner/latest/api/API_CreateService.html)API. Você também pode especificar um tempo de execução como parte do seu código-fonte. Use a `runtime` palavra-chave em um [arquivo de configuração do App Runner](config-file.md) que você inclui no seu repositório de código. A convenção de nomenclatura de um tempo de execução gerenciado é*<language-name><major-version>*. 

Para nomes e versões válidos do tempo de execução do Python, consulte. [Informações sobre o lançamento do Python Runtime](service-source-code-python-releases.md)

O App Runner atualiza o tempo de execução do seu serviço para a versão mais recente em cada implantação ou atualização de serviço. Se seu aplicativo exigir uma versão específica de um tempo de execução gerenciado, você poderá especificá-la usando a `runtime-version` palavra-chave no [arquivo de configuração do App Runner](config-file.md). Você pode bloquear qualquer nível de versão, incluindo uma versão principal ou secundária. O App Runner só faz atualizações de nível inferior no tempo de execução do seu serviço.

Sintaxe da versão para tempos de execução do Python: `major[.minor[.patch]]`

Por exemplo: `3.8.5`

Os exemplos a seguir demonstram o bloqueio de versões:
+ `3.8`— Bloqueie as versões principais e secundárias. O App Runner atualiza somente as versões de patch.
+ `3.8.5`— Bloqueie uma versão específica do patch. O App Runner não atualiza sua versão de tempo de execução.

**Topics**
+ [Configuração de tempo de execução do Python](#service-source-code-python.config)
+ [Explicações para versões específicas de tempo de execução](#service-source-code-python.callouts)
+ [Exemplos de tempo de execução em Python](#service-source-code-python.examples)
+ [Informações sobre o lançamento do Python Runtime](service-source-code-python-releases.md)

## Configuração de tempo de execução do Python
<a name="service-source-code-python.config"></a>

Ao escolher um tempo de execução gerenciado, você também deve configurar, no mínimo, comandos de compilação e execução. Você os configura ao [criar](manage-create.md) ou [atualizar](manage-configure.md) seu serviço App Runner. Você pode fazer isso usando um dos seguintes métodos:
+ **Usando o console do App Runner** — Especifique os comandos na seção **Configurar compilação** do processo de criação ou da guia de configuração.
+ **Usando a API App Runner** — chame a operação [CreateService](https://docs.aws.amazon.com/apprunner/latest/api/API_CreateService.html)ou [UpdateService](https://docs.aws.amazon.com/apprunner/latest/api/API_UpdateService.html)da API. Especifique os comandos usando os `StartCommand` membros `BuildCommand` e do tipo de [CodeConfigurationValues](https://docs.aws.amazon.com/apprunner/latest/api/API_CodeConfigurationValues.html)dados.
+ **Usando um [arquivo de configuração](config-file.md)** — especifique um ou mais comandos de compilação em até três fases de compilação e um único comando de execução que serve para iniciar seu aplicativo. Há configurações opcionais adicionais.

Fornecer um arquivo de configuração é opcional. Ao criar um serviço App Runner usando o console ou a API, você especifica se o App Runner obtém suas configurações diretamente quando é criado ou de um arquivo de configuração.

## Explicações para versões específicas de tempo de execução
<a name="service-source-code-python.callouts"></a>

**nota**  
O App Runner agora executa um processo de compilação atualizado para aplicativos com base nas seguintes versões de tempo de execução: Python 3.11, Node.js 22 e Node.js 18. Se seu aplicativo for executado em qualquer uma dessas versões de tempo de execução, consulte [Versões de tempo de execução gerenciadas e a compilação do App Runner](service-source-code.md#service-source-code.build-detail) para obter mais informações sobre o processo de compilação revisado. Os aplicativos que usam todas as outras versões de tempo de execução não são afetados e continuam usando o processo de criação original. 

### Python 3.11 (versão revisada do App Runner)
<a name="service-source-code-python.callouts.python311"></a>

Use as configurações a seguir no *apprunner.yaml para o tempo de execução gerenciado do Python* 3.11.
+ Defina a `runtime` chave na seção superior como `python311`   
**Example**  

  ```
  runtime: python311
  ```
+ Use o `pip3` em vez de `pip` para instalar dependências.
+ Use o `python3` intérprete em vez de. `python`
+ Execute o `pip3` instalador como um `pre-run` comando. O Python instala dependências fora do diretório. `/app` Como o App Runner executa a compilação revisada do App Runner para Python 3.11, qualquer coisa instalada fora do `/app` diretório por meio de comandos na seção Build do arquivo será perdida. `apprunner.yaml` Para obter mais informações, consulte [A versão revisada do App Runner](service-source-code.md#service-source-code.build-detail.v2).  
**Example**  

  ```
  run:
    runtime-version: 3.11
    pre-run:  
      - pip3 install pipenv
      - pipenv install
      - python3 copy-global-files.py
    command: pipenv run gunicorn django_apprunner.wsgi --log-file -
  ```

Para obter mais informações, consulte também o [exemplo de um arquivo de configuração estendido para Python 3.11](#service-source-code-python.examples.extended-v2) posteriormente neste tópico.

## Exemplos de tempo de execução em Python
<a name="service-source-code-python.examples"></a>

Os exemplos a seguir mostram os arquivos de configuração do App Runner para criar e executar um serviço Python. O último exemplo é o código-fonte de um aplicativo Python completo que você pode implantar em um serviço de tempo de execução do Python.

**nota**  
A versão de tempo de execução usada nesses exemplos é *3.7.7* *3.11* e. Você pode substituí-lo por uma versão que você deseja usar. Para ver a versão mais recente de tempo de execução do Python compatível, consulte. [Informações sobre o lançamento do Python Runtime](service-source-code-python-releases.md)

### Arquivo mínimo de configuração do Python
<a name="service-source-code-python.examples.minimal"></a>

Este exemplo mostra um arquivo de configuração mínimo que você pode usar com um tempo de execução gerenciado em Python. Para as suposições que o App Runner faz com um arquivo de configuração mínimo, consulte. [Exemplos de arquivos de configuração](config-file-examples.md#config-file-examples.managed)

O Python 3.11 usa os comandos e. `pip3` `python3` Para obter mais informações, consulte o [exemplo de um arquivo de configuração estendido para Python 3.11](#service-source-code-python.examples.extended-v2) posteriormente neste tópico.

**Example apprunner.yaml**  

```
version: 1.0
runtime: python3 
build:
  commands:
    build:
      - pip install pipenv
      - pipenv install 
run: 
  command: python app.py
```

### Arquivo de configuração estendido do Python
<a name="service-source-code-python.examples.extended"></a>

Este exemplo mostra o uso de todas as chaves de configuração com um tempo de execução gerenciado em Python.

**nota**  
A versão de tempo de execução usada nesses exemplos é*3.7.7*. Você pode substituí-lo por uma versão que você deseja usar. Para ver a versão mais recente de tempo de execução do Python compatível, consulte. [Informações sobre o lançamento do Python Runtime](service-source-code-python-releases.md)  
O Python 3.11 usa os comandos e. `pip3` `python3` Para obter mais informações, consulte o exemplo de um arquivo de configuração estendido para Python 3.11 posteriormente neste tópico.

**Example apprunner.yaml**  

```
version: 1.0
runtime: python3 
build:
  commands:
    pre-build:
      - wget -c https://s3.amazonaws.com/amzn-s3-demo-bucket/test-lib.tar.gz -O - | tar -xz
    build:        
      - pip install pipenv
      - pipenv install
    post-build:
      - python manage.py test
  env:
    - name: DJANGO_SETTINGS_MODULE
      value: "django_apprunner.settings"
    - name: MY_VAR_EXAMPLE
      value: "example"
run:
  runtime-version: 3.7.7
  command: pipenv run gunicorn django_apprunner.wsgi --log-file -
  network: 
    port: 8000
    env: MY_APP_PORT  
  env:
    - name: MY_VAR_EXAMPLE
      value: "example"
  secrets:
    - name: my-secret
      value-from: "arn:aws:secretsmanager:us-east-1:123456789012:secret:testingstackAppRunnerConstr-kJFXde2ULKbT-S7t8xR:username::"
    - name: my-parameter
      value-from: "arn:aws:ssm:us-east-1:123456789012:parameter/parameter-name"
    - name: my-parameter-only-name
      value-from: "parameter-name"
```

### Arquivo de configuração estendido do Python — Python 3.11 (usa a versão revisada)
<a name="service-source-code-python.examples.extended-v2"></a>

Este exemplo mostra o uso de todas as chaves de configuração com um tempo de execução gerenciado do Python 3.11 no. `apprunner.yaml` Esse exemplo inclui uma `pre-run` seção, já que essa versão do Python usa a versão revisada do App Runner.

O `pre-run` parâmetro só é compatível com a versão revisada do App Runner. Não insira esse parâmetro no arquivo de configuração se o aplicativo usar versões de tempo de execução compatíveis com a compilação original do App Runner. Para obter mais informações, consulte [Versões de tempo de execução gerenciadas e a compilação do App Runner](service-source-code.md#service-source-code.build-detail).

**nota**  
A versão de tempo de execução usada nesses exemplos é*3.11*. Você pode substituí-lo por uma versão que você deseja usar. Para ver a versão mais recente de tempo de execução do Python compatível, consulte. [Informações sobre o lançamento do Python Runtime](service-source-code-python-releases.md)

**Example apprunner.yaml**  

```
version: 1.0
runtime: python311
build:
  commands:
    pre-build:
      - wget -c https://s3.amazonaws.com/amzn-s3-demo-bucket/test-lib.tar.gz -O - | tar -xz
    build:        
      - pip3 install pipenv
      - pipenv install
    post-build:
      - python3 manage.py test
  env:
    - name: DJANGO_SETTINGS_MODULE
      value: "django_apprunner.settings"
    - name: MY_VAR_EXAMPLE
      value: "example"
run:
  runtime-version: 3.11
  pre-run:  
    - pip3 install pipenv
    - pipenv install
    - python3 copy-global-files.py
  command: pipenv run gunicorn django_apprunner.wsgi --log-file -
  network: 
    port: 8000
    env: MY_APP_PORT  
  env:
    - name: MY_VAR_EXAMPLE
      value: "example"
  secrets:
    - name: my-secret
      value-from: "arn:aws:secretsmanager:us-east-1:123456789012:secret:testingstackAppRunnerConstr-kJFXde2ULKbT-S7t8xR:username::"
    - name: my-parameter
      value-from: "arn:aws:ssm:us-east-1:123456789012:parameter/parameter-name"
    - name: my-parameter-only-name
      value-from: "parameter-name"
```

### Fonte completa do aplicativo Python
<a name="service-source-code-python.examples.end2end"></a>

Este exemplo mostra o código-fonte de um aplicativo Python completo que você pode implantar em um serviço de tempo de execução do Python.

**Example requirements.txt**  

```
pyramid==2.0
```

**Example server.py**  

```
from wsgiref.simple_server import make_server
from pyramid.config import Configurator
from pyramid.response import Response
import os

def hello_world(request):
    name = os.environ.get('NAME')
    if name == None or len(name) == 0:
        name = "world"
    message = "Hello, " + name + "!\n"
    return Response(message)

if __name__ == '__main__':
    port = int(os.environ.get("PORT"))
    with Configurator() as config:
        config.add_route('hello', '/')
        config.add_view(hello_world, route_name='hello')
        app = config.make_wsgi_app()
    server = make_server('0.0.0.0', port, app)
    server.serve_forever()
```

**Example apprunner.yaml**  

```
version: 1.0
runtime: python3
build:
  commands:
    build:
      - pip install -r requirements.txt
run:
  command: python server.py
```

# Informações sobre o lançamento do Python Runtime
<a name="service-source-code-python-releases"></a>

**Importante**  
O App Runner encerrará o suporte para **Python 3.7 **e Python**** 3.8 em 1º de dezembro de 2025. Para obter recomendações e mais informações, consulte[Fim do suporte para versões de tempo de execução gerenciado](service-source-code.md#service-source-code.managed-platforms.eos).

Este tópico lista os detalhes completos das versões de tempo de execução do Python compatíveis com o App Runner.


**Versões de tempo de execução suportadas — versão revisada do App Runner**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/apprunner/latest/dg/service-source-code-python-releases.html)

**Observações**  
**Python 3.11** — Temos recomendações específicas para a configuração de compilação de serviços que usam o tempo de execução gerenciado do Python 3.11. Para obter mais informações, consulte [Explicações para versões específicas de tempo de execução](service-source-code-python.md#service-source-code-python.callouts) o tópico da *plataforma Python*.
O App Runner fornece um processo de criação revisado para os principais tempos de execução específicos que foram lançados mais recentemente. Por isso, você verá referências à *versão revisada do App Runner e à versão* *original do App Runner* em determinadas seções deste documento. Para obter mais informações, consulte [Versões de tempo de execução gerenciadas e a compilação do App Runner](service-source-code.md#service-source-code.build-detail).


**Versões de tempo de execução suportadas — versão original do App Runner**  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/apprunner/latest/dg/service-source-code-python-releases.html)

**nota**  
O App Runner fornece um processo de criação revisado para os principais tempos de execução específicos que foram lançados mais recentemente. Por isso, você verá referências à *versão revisada do App Runner e à versão* *original do App Runner* em determinadas seções deste documento. Para obter mais informações, consulte [Versões de tempo de execução gerenciadas e a compilação do App Runner](service-source-code.md#service-source-code.build-detail).