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á.
Crie um pacote de origem da aplicação Elastic Beanstalk
Este tópico explica como carregar arquivos de origem da sua aplicação para o Elastic Beanstalk em um pacote de origem. Ele explica os requisitos de um pacote de origem, sua estrutura e as abordagens para criá-lo.
Quando você usa o console do AWS Elastic Beanstalk para implantar uma nova aplicação ou uma versão da aplicação, você precisará carregar os arquivos da aplicação em um pacote de origem. O pacote de origem deve cumprir os seguintes requisitos:
-
Consistir em um único arquivo
ZIP
ouWAR
(você pode incluir vários arquivosWAR
em seu arquivoZIP
) -
Não exceder 500 MB
-
Não incluir uma pasta pai ou o diretório de nível superior (subdiretórios podem ser usados)
Se você deseja implantar um aplicativo do operador que processa tarefas periódicas em segundo plano, o pacote de origem do aplicativo deverá incluir também um arquivo cron.yaml
. Para ter mais informações, consulte Tarefas periódicas.
Se você estiver implantando sua aplicação com a Elastic Beanstalk Command Line Interface (EB CLI), o AWS Toolkit for Eclipse ou o AWS Toolkit for Visual Studio, o arquivo ZIP ou WAR será automaticamente estruturado de modo correto. Para mais informações, consulte Usar a Interface de Linhas de Comando do Elastic Beanstalk (CLI do EB), Implantação de aplicações Java com o Elastic Beanstalk e A AWS Toolkit for Visual Studio.
Seções
Criar pacote de origem a partir da linha de comando
Crie um pacote de origem usando o comando zip
. Para incluir arquivos e pastas ocultos, use um padrão, como os seguintes.
~/myapp$ zip ../myapp.zip -r * .[^.]*
adding: app.js (deflated 63%)
adding: index.js (deflated 44%)
adding: manual.js (deflated 64%)
adding: package.json (deflated 40%)
adding: restify.js (deflated 85%)
adding: .ebextensions/ (stored 0%)
adding: .ebextensions/xray.config (stored 0%)
Isso garante que os arquivos de configuração do Elastic Beanstalk e outros arquivos e pastas que começam com um ponto sejam incluídos no arquivo.
Para aplicativos web Tomcat, use jar
para criar um arquivamento web.
~/myapp$ jar -cvf myapp
.war .
Os comandos acima incluem arquivos ocultos que podem aumentar o tamanho do pacote de origem desnecessariamente. Para obter mais controle, use um padrão de arquivo mais detalhado ou crie seu pacote de origem com o Git.
Criar pacote de origem com o Git
Se você estiver usando o Git para gerenciar o código-fonte do aplicativo, use o comando git archive
para criar o pacote de origem.
$ git archive -v -o myapp
.zip --format=zip HEAD
git archive
inclui apenas os arquivos que são armazenados em git e exclui arquivos ignorados e git. Isso ajuda a manter o pacote de origem o menor possível. Para obter mais informações, acesse a página do manual git-archive
Compactar arquivos no Mac OS X Finder ou Windows Explorer
Quando você criar um arquivo ZIP
no Mac OS X Finder ou Windows Explorer, certifique-se de compactar os arquivos e subpastas, em vez da pasta pai.
nota
A interface gráfica de usuário (GUI) nos sistemas operacionais baseados em Mac OS X e Linux não exibe os arquivos e pastas com nomes que começam com um ponto (.). Use a linha de comando em vez da GUI para compactar o aplicativo se o arquivo ZIP
deve incluir uma pasta oculta, como .ebextensions
. Para os procedimentos de linha de comando para criar um arquivo ZIP
no sistema operacional baseado em Mac OS X ou Linux, consulte Criar pacote de origem a partir da linha de comando.
exemplo
Suponhamos que você tenha uma pasta de projeto Python chamada myapp
, que inclui os seguintes arquivos e subpastas:
myapplication.py
README.md
static/
static/css
static/css/styles.css
static/img
static/img/favicon.ico
static/img/logo.png
templates/
templates/base.html
templates/index.html
Como observado na lista de requisitos acima, seu pacote de origem deve ser compactado sem uma pasta pai, para que a estrutura descompactada não inclua um diretório de nível superior extra. Neste exemplo, nenhuma pasta myapp
deverá ser criada quando os arquivos forem descompactados (ou, na linha de comando, nenhum segmento myapp
deverá ser adicionado aos caminhos de arquivo).
Este exemplo de estrutura de arquivos é usado em todo este tópico para ilustrar como compactar arquivos.
Criar pacote de origem para um aplicativo .NET
Se você usar o Visual Studio, poderá usar a ferramenta de implantação incluída no AWS Toolkit for Visual Studio para implantar a aplicação .NET no Elastic Beanstalk. Para ter mais informações, consulte Implantação de aplicativos do Elastic Beanstalk em. NETusando a ferramenta de implantação.
Se você precisa criar manualmente um pacote de origem para o seu aplicativo .NET, não pode simplesmente criar um arquivo ZIP
que contenha o diretório do projeto. É necessário criar um pacote de implantação da Web para seu projeto que seja adequado à implantação no Elastic Beanstalk. Há vários métodos que podem ser usados para criar um pacote de implantação:
-
Crie o pacote de implantação usando o assistente Publicar na Web no Visual Studio. Para obter mais informações, acesse Como criar um pacote de implantação Web no Visual Studio
. Importante
Ao criar o pacote de implantação da Web, inicie o Nome do site com
Default Web Site
. -
Se tiver um projeto .NET, você poderá criar o pacote de implantação usando o comando msbuild, conforme exibido no exemplo a seguir.
Importante
O parâmetro
DeployIisAppPath
deve começar comDefault Web Site
.C:/> msbuild
<web_app>.csproj
/t:Package /p:DeployIisAppPath="Default Web Site" -
Se você tem um projeto de site, pode usar a ferramenta de implantação da Web do IIS para criar o pacote de implantação. Para obter mais informações, acesse Packaging and Restoring a Web site
. Importante
O parâmetro
apphostconfig
deve começar comDefault Web Site
.
Se estiver implantando vários aplicativos ou um aplicativo ASP.NET Core, coloque sua .ebextensions
pasta na raiz do pacote de origem, lado a lado com os pacotes do aplicativo e arquivo manifesto:
~/workspace/source-bundle/
|-- .ebextensions
| |-- environmentvariables.config
| `-- healthcheckurl.config
|-- AspNetCore101HelloWorld.zip
|-- AspNetCoreHelloWorld.zip
|-- aws-windows-deployment-manifest.json
`-- VS2015AspNetWebApiApp.zip
Testar pacote de origem
Convém testar seu pacote de origem localmente antes de fazer upload para o Elastic Beanstalk. Como o Elastic Beanstalk usa basicamente a linha de comando para extrair os arquivos, é melhor fazer os testes a partir da linha de comando em vez de usar uma ferramenta GUI.
Certifique-se de que os arquivos descompactados aparecem na mesma pasta que o próprio arquivo, não em uma nova pasta ou diretório de nível superior.