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:
-
version
— Obrigató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
-
runtime
— Obrigató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-fontenota
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:
-
commands
— Obrigatório. Especifica os comandos que o App Runner executa durante várias fases de compilação. Inclui as seguintes subchaves:-
pre-build
— Opcional. Os comandos que o App Runner executa antes da compilação. Por exemplo, instale npm dependências ou teste bibliotecas. -
build
— Obrigatório. Os comandos que o App Runner executa para criar seu aplicativo. Por exemplo, usepipenv. -
post-build
— Opcional. 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
-
-
env
— Opcional. 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 pelospre-run
comandospre-build
,,build
post-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 pelorun
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-version
— Opcional. 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-run
— Opcional. 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
-…
-
-
command
— Obrigatório. O comando que o App Runner usa para executar seu aplicativo depois de concluir a criação do aplicativo.Sintaxe
run: command:
command
-
network
— Opcional. Especifica a porta que seu aplicativo escuta. A tabela inclui os seguintes campos:-
port
— Opcional. Se especificado, esse é o número da porta que seu aplicativo escuta. O padrão é8080
. -
env
— Opcional. 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
-
-
env
— Opcional. 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 pelospre-run
comandospre-build
,,build
post-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 pelorun
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"
-