Contêineres pré-configurados do Docker (AMI do Amazon Linux) - AWS Elastic Beanstalk

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

Contêineres pré-configurados do Docker (AMI do Amazon Linux)

nota

Em 18 de julho de 2022, o Elastic Beanstalk definiu o status de todas as ramificações de plataforma baseadas no Amazon Linux AMI (AL1) como descontinuadas. Para obter mais informações sobre como migrar para uma ramificação da plataforma Amazon Linux 2023 atual e totalmente compatível, consulte Migrar a aplicação Linux do Elastic Beanstalk para o Amazon Linux 2023 ou Amazon Linux 2.

A ramificação pré-configurada da GlassFish plataforma Docker que é executada no Amazon Linux AMI (AL1) não é mais suportada. Para migrar seu GlassFish aplicativo para uma plataforma Amazon Linux 2023 compatível, implante GlassFish e seu código de aplicativo em uma imagem Docker do Amazon Linux 2023. Para obter mais informações, consulte o tópico a seguir, Implantação de um GlassFish aplicativo na plataforma Docker: um caminho de migração para o Amazon Linux 2023.

Esta seção mostra como desenvolver uma aplicação demonstrativa localmente e implantá-la no Elastic Beanstalk com um contêiner pré-configurado do Docker.

Configurar seu ambiente de desenvolvimento local

Para este passo a passo, usamos um aplicativo de GlassFish exemplo.

Para configurar seu ambiente
  1. Crie uma pasta para o aplicativo de exemplo.

    ~$ mkdir eb-preconf-example ~$ cd eb-preconf-example
  2. Faça o download do código de aplicativo de exemplo para a nova pasta.

    ~$ wget https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/samples/docker-glassfish-v1.zip ~$ unzip docker-glassfish-v1.zip ~$ rm docker-glassfish-v1.zip

Desenvolver e testar localmente

Para desenvolver um GlassFish aplicativo de exemplo
  1. Adicione um Dockerfile à pasta raiz do seu aplicativo. No arquivo, especifique a imagem base do AWS Elastic Beanstalk Docker a ser usada para executar seu contêiner Docker pré-configurado local. Posteriormente, você implantará seu aplicativo em uma versão pré-configurada da plataforma Docker do Elastic GlassFish Beanstalk. Escolha a imagem de base do Docker que essa versão da plataforma usa. Para descobrir a imagem do Docker atual da versão da plataforma, consulte a seção Docker pré-configurado na página Plataformas compatíveis com o AWS Elastic Beanstalk no guia de Plataformas do AWS Elastic Beanstalk .

    exemplo ~/E/Dockerfile b-preconf-example
    # For Glassfish 5.0 Java 8 FROM amazon/aws-eb-glassfish:5.0-al-onbuild-2.11.1

    Para obter mais informações sobre como usar um Dockerfile, consulte Configuração do Docker.

  2. Crie a imagem do Docker.

    ~/eb-preconf-example$ docker build -t my-app-image .
  3. Execute o contêiner Docker da imagem.

    nota

    Você deve incluir o sinalizador -p para mapear a porta 8080 no contêiner para a porta 3000 do localhost. Os contêineres do Docker do Elastic Beanstalk sempre expõem a aplicação na porta 8080 no contêiner. O sinalizador -it executa a imagem como processo interativo. O sinalizador --rm limpa o sistema de arquivos do contêiner quando o contêiner é encerrado. Você tem a opção de incluir o sinalizador -d para executar a imagem como um daemon.

    $ docker run -it --rm -p 3000:8080 my-app-image
  4. Para visualizar o aplicativo de exemplo, digite o seguinte URL no seu navegador da web.

    http://localhost:3000
    O aplicativo de GlassFish exemplo exibido em um navegador da web

Implantar no Elastic Beanstalk

Depois de testar a aplicação, você estará pronto para implantá-la no Elastic Beanstalk.

Como implantar a aplicação no Elastic Beanstalk
  1. Na pasta raiz do seu aplicativo, renomeie o Dockerfile como Dockerfile.local. Essa etapa é necessária para que o Elastic Beanstalk use o Dockerfile que contém as instruções corretas para que o Elastic Beanstalk crie uma imagem do Docker personalizada em cada instância do Amazon EC2 no ambiente do Elastic Beanstalk.

    nota

    Não será necessário executar essa etapa se o Dockerfile incluir instruções que modifiquem a imagem de base do Docker da versão da plataforma. Não será necessário usar um Dockerfile se o seu Dockerfile incluir apenas uma linha FROM para especificar a imagem de base da qual criar o contêiner. Neste caso, o Dockerfile é redundante.

  2. Crie um pacote de origem do aplicativo.

    ~/eb-preconf-example$ zip myapp.zip -r *
  3. Abra o console do Elastic Beanstalk com este link pré-configurado: console.aws.amazon.com/elasticbeanstalk/home#/ newApplication?applicationName=tutorials &environmentType= LoadBalanced

  4. Em Platform (Plataforma), em Preconfigured – Docker (Pré-configurado - Docker), escolha Glassfish.

  5. Para Application code, escolha Upload your code e Upload.

  6. Escolha Local file (Arquivo local), selecione Browse (Procurar) e abra o pacote de origem do aplicativo que você acabou de criar.

  7. Escolha Carregar.

  8. Selecione Review and launch.

  9. Revise as configurações disponíveis e, em seguida, escolha Create app.

  10. Quando o ambiente é criado, você pode visualizar o aplicativo implantado. Escolha o URL do ambiente exibido na parte superior do painel do console.