Referência do arquivo de configuração do App Runner - AWS App Runner

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

Referência do arquivo de configuração do App Runner

nota

Os arquivos de configuração são aplicáveis somente aos serviços baseados no código-fonte. Você não pode usar arquivos de configuração com serviços baseados em imagem.

Este tópico é um guia de referência abrangente sobre a sintaxe e a semântica de um arquivo de AWS App Runner configuração. Para obter uma visão geral dos arquivos de configuração do App Runner, consulteDefinindo as opções do serviço App Runner usando um arquivo de configuração.

O arquivo de configuração do App Runner é um arquivo YAML. Dê um apprunner.yaml nome e coloque-o no diretório de origem do repositório do seu aplicativo.

Visão geral da estrutura

O arquivo de configuração do App Runner é um arquivo YAML. Dê um apprunner.yaml nome e coloque-o no diretório de origem do repositório do seu aplicativo.

O arquivo de configuração do App Runner contém as seguintes partes principais:

  • Seção superior — Contém teclas de nível superior

  • Seção de construção — configura o estágio de construção

  • Seção Executar — Configura o estágio de execução

Seção superior

As chaves na parte superior do arquivo fornecem informações gerais sobre o arquivo e o tempo de execução do serviço. As seguintes chaves estão disponíveis:

  • versionObrigatório. A versão do arquivo de configuração do App Runner. O ideal é usar a versão mais recente.

    Sintaxe

    version: version
    exemplo
    version: 1.0
  • runtimeObrigatório. O nome do tempo de execução que seu aplicativo usa. Para saber mais sobre os tempos de execução disponíveis para as diferentes plataformas de programação que o App Runner oferece, consulte. Serviço App Runner baseado no código-fonte

    nota

    A convenção de nomenclatura de um tempo de execução gerenciado é. <language-name><major-version>

    Sintaxe

    runtime: runtime-name
    exemplo
    runtime: python3

Seção de construção

A seção de compilação configura o estágio de construção da implantação do serviço App Runner. Você pode especificar comandos de construção e variáveis de ambiente. Os comandos de compilação são obrigatórios.

A seção começa com a build: chave e tem as seguintes subchaves:

  • commandsObrigatório. Especifica os comandos que o App Runner executa durante várias fases de compilação. Inclui as seguintes subchaves:

    • pre-buildOpcional. Os comandos que o App Runner executa antes da compilação. Por exemplo, instale npm dependências ou teste bibliotecas.

    • buildObrigatório. Os comandos que o App Runner executa para criar seu aplicativo. Por exemplo, usepipenv.

    • post-buildOpcional. Os comandos que o App Runner executa após a compilação. Por exemplo, use o Maven para empacotar artefatos de construção em um arquivo JAR ou WAR ou executar um teste.

    Sintaxe

    build: commands: pre-build: - command - build: - command - post-build: - command -
    exemplo
    build: commands: pre-build: - yum install openssl build: - pip install -r requirements.txt post-build: - python manage.py test
  • envOpcional. Especifica variáveis de ambiente personalizadas para o estágio de construção. Definido como mapeamentos escalares de nome-valor. Você pode se referir a essas variáveis pelo nome nos seus comandos de compilação.

    nota

    Há duas env entradas distintas em dois locais diferentes nesse arquivo de configuração. Um conjunto está na seção Construir e o outro na seção Executar.

    • O env conjunto na seção Build pode ser referenciado pelos pre-run comandospre-build,, buildpost-build, e durante o processo de compilação.

      Importante: observe que os pre-run comandos estão localizados na seção Executar desse arquivo, embora possam acessar somente as variáveis de ambiente definidas na seção Construir.

    • O env conjunto na seção Executar pode ser referenciado pelo run comando no ambiente de execução.

    Sintaxe

    build: env: - name: name1 value: value1 - name: name2 value: value2 -
    exemplo
    build: env: - name: DJANGO_SETTINGS_MODULE value: "django_apprunner.settings" - name: MY_VAR_EXAMPLE value: "example"

Seção de execução

A seção de execução configura o estágio de execução do contêiner da implantação do aplicativo App Runner. Você pode especificar a versão do tempo de execução, os comandos de pré-execução (somente no formato revisado), o comando de início, a porta de rede e as variáveis de ambiente.

A seção começa com a run: chave e tem as seguintes subchaves:

  • runtime-versionOpcional. Especifica uma versão de tempo de execução que você deseja bloquear para o serviço App Runner.

    Por padrão, somente a versão principal está bloqueada. O App Runner usa as versões secundárias e de patch mais recentes que estão disponíveis para o tempo de execução em cada implantação ou atualização de serviço. Se você especificar versões principais e secundárias, ambas ficarão bloqueadas e o App Runner atualizará somente as versões de patch. Se você especificar versões principais, secundárias e de patch, seu serviço será bloqueado em uma versão de tempo de execução específica e o App Runner nunca a atualizará.

    Sintaxe

    run: runtime-version: major[.minor[.patch]]
    nota

    Os tempos de execução de algumas plataformas têm componentes de versão diferentes. Consulte os tópicos específicos da plataforma para obter detalhes.

    exemplo
    runtime: python3 run: runtime-version: 3.7
  • pre-runOpcional. Somente uso revisado da compilação. Especifica os comandos que o App Runner executa após copiar seu aplicativo da imagem de compilação para a imagem de execução. Você pode inserir comandos aqui para modificar a imagem de execução fora do /app diretório. Por exemplo, se você precisar instalar dependências globais adicionais que residem fora do /app diretório, insira os comandos necessários nesta subseção para fazer isso. Para obter mais informações sobre o processo de criação do App Runner, consulteVersões de tempo de execução gerenciadas e a compilação do App Runner.

    nota
    • Importante — Embora os pre-run comandos estejam listados na seção Executar, eles só podem referenciar as variáveis de ambiente definidas na seção Construir desse arquivo de configuração. Eles não podem referenciar as variáveis de ambiente definidas nesta seção Executar.

    • 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 ter mais informações, consulte Versões de tempo de execução gerenciadas e a compilação do App Runner.

    Sintaxe

    run: pre-run: - command -
  • commandObrigatório. O comando que o App Runner usa para executar seu aplicativo depois de concluir a criação do aplicativo.

    Sintaxe

    run: command: command
  • networkOpcional. Especifica a porta que seu aplicativo escuta. A tabela inclui os seguintes campos:

    • portOpcional. Se especificado, esse é o número da porta que seu aplicativo escuta. O padrão é 8080.

    • envOpcional. Se especificado, o App Runner passa o número da porta para o contêiner nessa variável de ambiente, além de (não em vez de) passar o mesmo número de porta na variável de ambiente padrão,PORT. Em outras palavras, se você especificarenv, o App Runner passará o número da porta em duas variáveis de ambiente.

    Sintaxe

    run: network: port: port-number env: env-variable-name
    exemplo
    run: network: port: 8000 env: MY_APP_PORT
  • envOpcional. Definição de variáveis de ambiente personalizadas para o estágio de execução. Definido como mapeamentos escalares de nome-valor. Você pode se referir a essas variáveis pelo nome em seu ambiente de execução.

    nota

    Há duas env entradas distintas em dois locais diferentes nesse arquivo de configuração. Um conjunto está na seção Construir e o outro na seção Executar.

    • O env conjunto na seção Build pode ser referenciado pelos pre-run comandospre-build,, buildpost-build, e durante o processo de compilação.

      Importante: observe que os pre-run comandos estão localizados na seção Executar desse arquivo, embora possam acessar somente as variáveis de ambiente definidas na seção Construir.

    • O env conjunto na seção Executar pode ser referenciado pelo run comando no ambiente de execução.

    Sintaxe

    run: env: - name: name1 value: value1 - name: name2 value: value2 secrets: - name: name1 value-from: arn:aws:secretsmanager:region:aws_account_id:secret:secret-id - name: name2 value-from: arn:aws:ssm:region:aws_account_id:parameter/parameter-name -
    exemplo
    run: 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"