

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 Node.js do
<a name="service-source-code-nodejs"></a>

**Importante**  
O App Runner encerrará o suporte para **Node.js 12**, **Node.js 14**, **Node.js 16** e **Node.js 18** 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 Node.js fornece tempos de execução gerenciados. Cada tempo de execução facilita a criação e a execução de contêineres com aplicativos da Web baseados em uma versão do Node.js. Quando você usa um tempo de execução do Node.js, o App Runner começa com uma imagem de tempo de execução do Node.js gerenciada. 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 Node.js e algumas ferramentas. 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 obter nomes e versões válidos do tempo de execução do Node.js, consulte[Informações sobre a versão de execução do Node.js](service-source-code-nodejs-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 Node.js: `major[.minor[.patch]]`

Por exemplo: `22.14.0`

Os exemplos a seguir demonstram o bloqueio de versões:
+ `22.14`— Bloqueie as versões principais e secundárias. O App Runner atualiza somente as versões de patch.
+ `22.14.0`— 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 Node.js](#service-source-code-nodejs.config)
+ [Explicações para versões específicas de tempo de execução](#service-source-code-nodejs.callouts)
+ [Exemplos de tempo de execução do Node.js](#service-source-code-nodejs.examples)
+ [Informações sobre a versão de execução do Node.js](service-source-code-nodejs-releases.md)

## Configuração de tempo de execução do Node.js
<a name="service-source-code-nodejs.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)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.

Especificamente com os tempos de execução do Node.js, você também pode configurar a compilação e o tempo de execução usando um arquivo JSON nomeado `package.json` na raiz do seu repositório de origem. Usando esse arquivo, você pode configurar a versão do mecanismo Node.js, os pacotes de dependências e vários comandos (aplicativos de linha de comando). Gerenciadores de pacotes como npm ou yarn interpretam esse arquivo como entrada para seus comandos.

Por exemplo:
+ **npm install**instala pacotes definidos pelo `devDependencies` nó `dependencies` e em`package.json`.
+ **npm start**ou **npm run start** executa o comando definido pelo `scripts/start` nó em`package.json`.

Veja a seguir um exemplo de arquivo `package.json`.

### package.json
<a name="service-source-code-nodejs.config.package-json-example"></a>

```
{
  "name": "node-js-getting-started",
  "version": "0.3.0",
  "description": "A sample Node.js app using Express 4",
  "engines": {
    "node": "22.14.0"
  },
  "scripts": {
    "start": "node index.js",
    "test": "node test.js"
  },
  "dependencies": {
    "cool-ascii-faces": "^1.3.4",
    "ejs": "^2.5.6",
    "express": "^4.15.2"
  },
  "devDependencies": {
    "got": "^11.3.0",
    "tape": "^4.7.0"
  }
}
```

*Para obter mais informações sobre isso`package.json`, consulte [Criação de um arquivo package.json](https://docs.npmjs.com/creating-a-package-json-file) no site do npm Docs.* 

**Dicas**  
Se seu `package.json` arquivo definir um **start** comando, você poderá usá-lo como um **run** comando no arquivo de configuração do App Runner, conforme mostra o exemplo a seguir.  

**Example**  
package.json  

  ```
  {
    "scripts": {
      "start": "node index.js"
    }
  }
  ```
apprunner.yaml  

  ```
  run:
    command: npm start
  ```
Quando você executa **npm install** em seu ambiente de desenvolvimento, o npm cria o arquivo`package-lock.json`. Esse arquivo contém um instantâneo das versões do pacote que o npm acabou de instalar. Depois disso, quando o npm instala dependências, ele usa essas versões exatas. Se você instalar o yarn, ele criará um `yarn.lock` arquivo. Confirme esses arquivos em seu repositório de código-fonte para garantir que seu aplicativo seja instalado com as versões das dependências com as quais você o desenvolveu e testou.
Você também pode usar um arquivo de configuração do App Runner para configurar a versão do Node.js e o comando start. Quando você faz isso, essas definições substituem as que estão em`package.json`. Um conflito entre a `node` versão `package.json` e o `runtime-version` valor no arquivo de configuração do App Runner faz com que a fase de construção do App Runner falhe.

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

### Node.js 22 e Node.js 18 (versão revisada do App Runner)
<a name="service-source-code-nodejs.callouts.nodejs18"></a>

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. 

## Exemplos de tempo de execução do Node.js
<a name="service-source-code-nodejs.examples"></a>

Os exemplos a seguir mostram os arquivos de configuração do App Runner para criar e executar um serviço Node.js. 

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

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

Este exemplo mostra um arquivo de configuração mínimo que você pode usar com um tempo de execução gerenciado pelo Node.js. 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)

**Example apprunner.yaml**  

```
version: 1.0
runtime: nodejs22
build:
  commands:    
    build:
      - npm install --production                                  
run:                              
  command: node app.js
```

### Arquivo de configuração Node.js estendido
<a name="service-source-code-nodejs.examples.extended"></a>

Este exemplo mostra o uso de todas as chaves de configuração com um tempo de execução gerenciado pelo Node.js.

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

**Example apprunner.yaml**  

```
version: 1.0
runtime: nodejs22
build:
  commands:
    pre-build:
      - npm install --only=dev
      - node test.js
    build:
      - npm install --production
    post-build:
      - node node_modules/ejs/postinstall.js
  env:
    - name: MY_VAR_EXAMPLE
      value: "example"
run:
  runtime-version: 22.14.0
  command: node app.js
  network:
    port: 8000
    env: APP_PORT
  env:
    - name: MY_VAR_EXAMPLE
      value: "example"
```

### Arquivo de configuração Node.js estendido — Node.js 22 (usa compilação revisada)
<a name="service-source-code-nodejs.examples.extended-v2"></a>

Este exemplo mostra o uso de todas as chaves de configuração com um tempo de execução gerenciado pelo Node.js no`apprunner.yaml`. Esse exemplo inclui uma `pre-run` seção, já que essa versão do Node.js 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 é*22.14.0*. Você pode substituí-lo por uma versão que você deseja usar. Para obter a versão de tempo de execução mais recente compatível do Node.js, consulte[Informações sobre a versão de execução do Node.js](service-source-code-nodejs-releases.md).

**Example apprunner.yaml**  

```
version: 1.0
runtime: nodejs22
build:
  commands:
    pre-build:
      - npm install --only=dev
      - node test.js
    build:
      - npm install --production
    post-build:
      - node node_modules/ejs/postinstall.js
  env:
    - name: MY_VAR_EXAMPLE
      value: "example"
run:
  runtime-version: 22.14.0
  pre-run: 
    - node copy-global-files.js
  command: node app.js
  network:
    port: 8000
    env: APP_PORT
  env:
    - name: MY_VAR_EXAMPLE
      value: "example"
```

### Aplicativo Node.js com Grunt
<a name="service-source-code-nodejs.examples.grunt"></a>

Este exemplo mostra como configurar um aplicativo Node.js desenvolvido com o Grunt. [O Grunt](https://gruntjs.com/) é um executor de JavaScript tarefas de linha de comando. Ele executa tarefas repetitivas e gerencia a automação de processos para reduzir o erro humano. Os plug-ins Grunt e Grunt são instalados e gerenciados usando o npm. Você configura o Grunt incluindo o `Gruntfile.js` arquivo na raiz do seu repositório de origem.

**Example package.json**  

```
{
  "scripts": {
    "build": "grunt uglify",
    "start": "node app.js"
  },
  "devDependencies": {
    "grunt": "~0.4.5",
    "grunt-contrib-jshint": "~0.10.0",
    "grunt-contrib-nodeunit": "~0.4.1",
    "grunt-contrib-uglify": "~0.5.0"
  },
  "dependencies": {
    "express": "^4.15.2"
  },
}
```

**Example Gruntfile.js**  

```
module.exports = function(grunt) {

  // Project configuration.
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    uglify: {
      options: {
        banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
      },
      build: {
        src: 'src/<%= pkg.name %>.js',
        dest: 'build/<%= pkg.name %>.min.js'
      }
    }
  });

  // Load the plugin that provides the "uglify" task.
  grunt.loadNpmTasks('grunt-contrib-uglify');

  // Default task(s).
  grunt.registerTask('default', ['uglify']);

};
```

**Example apprunner.yaml**  
A versão de tempo de execução usada nesses exemplos é*22.14.0*. Você pode substituí-lo por uma versão que você deseja usar. Para obter a versão de tempo de execução mais recente compatível do Node.js, consulte[Informações sobre a versão de execução do Node.js](service-source-code-nodejs-releases.md).

```
version: 1.0
runtime: nodejs22
build:
  commands:
    pre-build:
      - npm install grunt grunt-cli
      - npm install --only=dev
      - npm run build
    build:
      - npm install --production
run:
  runtime-version: 22.14.0
  command: node app.js
  network:
    port: 8000
    env: APP_PORT
```

# Informações sobre a versão de execução do Node.js
<a name="service-source-code-nodejs-releases"></a>

**Importante**  
O App Runner encerrará o suporte para **Node.js 12**, **Node.js 14**, **Node.js 16** e **Node.js 18** 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).

**nota**  
A política de suspensão de uso padrão do App Runner é descontinuar um tempo de execução quando qualquer componente importante do tempo de execução chegar ao fim do suporte de longo prazo da comunidade (LTS) e as atualizações de segurança não estiverem mais disponíveis. Em alguns casos, o App Runner pode atrasar a suspensão de uso de um tempo de execução por um período limitado, além da end-of-support data da versão do idioma suportada pelo tempo de execução. Um exemplo desse caso pode ser estender o suporte a um tempo de execução para permitir que os clientes tenham tempo para a migração.

Este tópico lista os detalhes completos das versões de tempo de execução do Node.js suportadas pelo 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-nodejs-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).


**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-nodejs-releases.html)




**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-nodejs-releases.html)