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 esquema do manifesto de implantação
O manifesto de implantação é um arquivo JSON que define como o Elastic Beanstalk deve implantar e configurar seus aplicativos Windows. Esta seção fornece uma referência abrangente para todas as propriedades e opções de configuração suportadas no esquema do manifesto.
Estrutura do manifesto
O manifesto de implantação segue um esquema JSON específico com a seguinte estrutura de nível superior:
exemplo Estrutura básica do manifesto
{
"manifestVersion": 1,
"skipIISReset": false,
"iisConfig": {
"appPools": [...]
},
"deployments": {
"msDeploy": [...],
"aspNetCoreWeb": [...],
"custom": [...]
}
}
Propriedades de nível superior
manifestVersion
(obrigatório)-
Tipo: número
Padrão: 1
Valores válidos: 1
Especifica a versão do esquema do manifesto. Atualmente, somente a versão 1 é suportada.
skipIISReset
(opcional)-
Tipo: booliano
Padrão: falso
Controla se o IIS é redefinido durante as implantações do aplicativo. Esse sinalizador afeta tanto os tipos de
aspNetCoreWeb
implantaçãomsDeploy
quanto os tipos de implantação.Comportamento:
-
Não especificado ou
false
(padrão): as redefinições do IIS são realizadas durante as operações de instalação, desinstalação e atualização. Esse é o comportamento tradicional. -
true
: as redefinições do IIS são ignoradas durante as operações de implantação.
Benefícios:
-
Tempo de inatividade reduzido — os aplicativos sofrem menos interrupções de serviço durante as implantações.
-
Implantações mais rápidas — elimina o tempo necessário para que o IIS seja totalmente reiniciado e reinicializado.
nota
Ao usar
skipIISReset
, a RestartAppServeroperação executa uma redefinição do IIS independentemente dessa configuração de sinalizador.Exemplo:
{ "manifestVersion": 1, "skipIISReset": true, "deployments": { "aspNetCoreWeb": [ { "name": "my-dotnet-core-app", "parameters": { "archive": "dotnet-core-app.zip", "iisPath": "/" } } ] } }
-
deployments
(obrigatório)-
Tipo: Objeto
Contém as configurações de implantação para seus aplicativos. Esse objeto pode incluir
msDeploy
,aspNetCoreWeb
, e tipos decustom
implantação. iisConfig
(opcional)-
Tipo: Objeto
Define as configurações do IIS a serem aplicadas antes da implantação dos aplicativos. Atualmente, oferece suporte à configuração do pool de aplicativos.
Configuração do IIS
A iisConfig
seção permite que você defina as configurações do IIS antes de implantar seus aplicativos. Isso é particularmente útil para configurar grupos de aplicativos com configurações específicas.
Pools de aplicativos
Os pools de aplicativos fornecem isolamento entre aplicativos e permitem que você defina as configurações de tempo de execução para grupos de aplicativos.
exemplo Configuração do pool de aplicativos
{
"iisConfig": {
"appPools": [
{
"name": "MyAppPool",
"enable32Bit": false,
"managedPipelineMode": "Integrated",
"managedRuntimeVersion": "v4.0",
"queueLength": 1000,
"cpu": {
"limitPercentage": 80,
"limitAction": "Throttle",
"limitMonitoringInterval": 5
},
"recycling": {
"regularTimeInterval": 1440,
"requestLimit": 10000,
"memory": 1048576,
"privateMemory": 524288
}
}
]
}
}
Propriedades do pool de aplicativos
name
(obrigatório)-
Tipo: string
O nome do pool de aplicativos. Esse nome é usado para referenciar o pool nas configurações de implantação.
enable32Bit
(opcional)-
Tipo: booliano
Permite que um aplicativo de 32 bits seja executado em uma versão de 64 bits do Windows. Defina como
true
para aplicativos legados que exigem compatibilidade de 32 bits. managedPipelineMode
(opcional)-
Tipo: string
Valores válidos: “Integrado”, “Clássico”
Especifica o modo de processamento de solicitações para o pool de aplicativos.
managedRuntimeVersion
(opcional)-
Tipo: string
Valores válidos: “Sem código gerenciado”, “v2.0", “v4.0"
Especifica a versão do.NET Framework para o pool de aplicativos.
queueLength
(opcional)-
Tipo: inteiro
Número máximo de solicitações que o HTTP.sys enfileira para o pool de aplicativos antes de rejeitar solicitações adicionais.
Configuração da CPU
O cpu
objeto configura os limites de uso da CPU e o monitoramento do pool de aplicativos.
limitPercentage
(opcional)-
Tipo: número
Porcentagem máxima de tempo de CPU que os processos de trabalho no pool de aplicativos podem consumir.
limitAction
(opcional)-
Tipo: string
Valores válidos: "NoAction“, “KillW3wp”, “Throttle”, "” ThrottleUnderLoad
Ação a ser tomada quando o limite de CPU for atingido.
limitMonitoringInterval
(opcional)-
Tipo: número
Período de redefinição (em minutos) para monitoramento da CPU e limites de aceleração.
Configuração de reciclagem
O recycling
objeto configura quando e como os processos de trabalho do pool de aplicativos são reciclados.
regularTimeInterval
(opcional)-
Tipo: inteiro
Intervalo de tempo (em minutos) após o qual o pool de aplicativos é reciclado. Defina como 0 para desativar a reciclagem com base no tempo.
requestLimit
(opcional)-
Tipo: inteiro
Número máximo de solicitações que o pool de aplicativos processa antes da reciclagem.
memory
(opcional)-
Tipo: inteiro
Quantidade de memória virtual (em kilobytes) que aciona a reciclagem do processo de trabalho.
privateMemory
(opcional)-
Tipo: inteiro
Quantidade de memória privada (em kilobytes) que aciona a reciclagem do processo de trabalho.
Tipos de implantação
O deployments
objeto contém matrizes de configurações de implantação para diferentes tipos de aplicativos. Cada tipo de implantação tem propriedades e casos de uso específicos.
MSDeploy implantações
MSDeploy as implantações são usadas para aplicativos do.NET Framework tradicionais que podem ser implantados usando o Web Deploy ()MSDeploy.
exemplo MSDeploy configuração de implantação
{
"deployments": {
"msDeploy": [
{
"name": "WebApp",
"description": "Main web application",
"parameters": {
"appBundle": "webapp.zip",
"iisPath": "/",
"appPool": "DefaultAppPool"
}
}
]
}
}
MSDeploy propriedades de implantação
name
(obrigatório)-
Tipo: string
Nome exclusivo para a implantação. Esse nome deve ser exclusivo em todas as implantações no manifesto.
description
(opcional)-
Tipo: string
Descrição legível por humanos da implantação.
parameters
(obrigatório)-
Tipo: Objeto
Parâmetros de configuração para a MSDeploy operação.
scripts
(opcional)-
Tipo: Objeto
PowerShell scripts para execução em vários estágios do ciclo de vida da implantação.
MSDeploy parâmetros
appBundle
(obrigatório)-
Tipo: string
Caminho para o pacote de aplicativos (arquivo ZIP) em relação ao arquivo de manifesto. Esse pacote contém os arquivos do aplicativo a serem implantados.
iisPath
(opcional)-
Tipo: string
Padrão: “/”
Caminho do diretório virtual no IIS em que o aplicativo será implantado. Use “/” para o caminho raiz ou “/api” para um subdiretório.
appPool
(opcional)-
Tipo: string
Nome do pool de aplicativos para executar esse aplicativo.
Implantações do ASP.NET Core
As implantações do ASP.NET Core são projetadas especificamente para aplicativos.NET Core e o.NET 5+.
exemplo Configuração de implantação do ASP.NET Core
{
"deployments": {
"aspNetCoreWeb": [
{
"name": "CoreAPI",
"description": "ASP.NET Core Web API",
"parameters": {
"appBundle": "coreapi.zip",
"iisPath": "/api",
"appPool": "CoreAppPool"
}
}
]
}
}
As implantações do ASP.NET Core usam a mesma estrutura de propriedades das MSDeploy implantações, com a principal diferença sendo o ambiente de tempo de execução e o modelo de hospedagem usados para o aplicativo.
Parâmetros de implantação do ASP.NET Core
appBundle
(obrigatório)-
Tipo: string
Caminho para o pacote de aplicativos em relação ao arquivo de manifesto. Isso pode ser um arquivo ZIP ou um caminho de diretório contendo o aplicativo ASP.NET Core publicado.
iisPath
(opcional)-
Tipo: string
Padrão: “/”
Caminho do diretório virtual no IIS para o aplicativo ASP.NET Core.
appPool
(opcional)-
Tipo: string
Pool de aplicativos para o aplicativo ASP.NET Core. O pool será configurado adequadamente para hospedagem ASP.NET Core.
Implantações personalizadas
As implantações personalizadas fornecem controle total sobre o processo de implantação por meio de PowerShell scripts. Esse tipo de implantação é útil para cenários complexos que exigem instalação, configuração ou lógica de implantação personalizadas.
exemplo Configuração de implantação personalizada
{
"deployments": {
"custom": [
{
"name": "CustomService",
"description": "Custom Windows service deployment",
"architecture": 32,
"scripts": {
"install": {
"file": "install-service.ps1"
},
"restart": {
"file": "restart-service.ps1"
},
"uninstall": {
"file": "uninstall-service.ps1",
"ignoreErrors": true
}
}
}
]
}
}
Propriedades de implantação personalizadas
name
(obrigatório)-
Tipo: string
Nome exclusivo para a implantação personalizada.
description
(opcional)-
Tipo: string
Descrição da implantação personalizada.
architecture
(opcional)-
Tipo: inteiro
Padrão: 32
Valores válidos: 32, 64
A especificação de arquitetura para o modo de execução de scripts PowerShell
scripts
(obrigatório)-
Tipo: Objeto
PowerShell scripts que definem o comportamento da implantação. As implantações personalizadas oferecem suporte a tipos de script adicionais em comparação com outros tipos de implantação.
Scripts de implantação
Os scripts de implantação são PowerShell scripts executados em pontos específicos durante o ciclo de vida da implantação. Diferentes tipos de implantação oferecem suporte a diferentes conjuntos de eventos de script.
Eventos de script
Os seguintes eventos de script estão disponíveis dependendo do tipo de implantação:
Scripts de implantação padrão (MSDeploy e aspNetCore Web)
preInstall
-
É executado antes que o aplicativo seja instalado ou atualizado.
postInstall
-
É executado depois que o aplicativo é instalado ou atualizado.
preRestart
-
É executado antes que o aplicativo seja reiniciado.
postRestart
-
É executado depois que o aplicativo é reiniciado.
preUninstall
-
É executado antes da desinstalação do aplicativo.
postUninstall
-
É executado após a desinstalação do aplicativo.
Scripts de implantação personalizados (somente implantações personalizadas)
install
-
Script de instalação principal para implantações personalizadas. Esse script é responsável pela instalação do aplicativo ou serviço.
restart
-
Script para reiniciar o aplicativo ou serviço. Chamado quando o ambiente é reiniciado.
uninstall
-
Script para desinstalar o aplicativo ou serviço. Chamado durante o encerramento do ambiente ou a remoção do aplicativo.
Propriedades do script
Cada script é definido como um objeto com as seguintes propriedades:
file
(obrigatório)-
Tipo: string
Caminho para o arquivo de PowerShell script em relação ao arquivo de manifesto. O script deve ter uma
.ps1
extensão. ignoreErrors
(opcional)-
Tipo: booliano
Padrão: falso
Quando definido como
true
, a implantação continua mesmo se o script falhar. Use isso para scripts não críticos ou operações de limpeza.
exemplo Exemplo de configuração de script
{
"scripts": {
"preInstall": {
"file": "backup-config.ps1",
"ignoreErrors": true
},
"postInstall": {
"file": "configure-app.ps1"
}
}
}