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á.
Para especificar comandos personalizados para iniciar um aplicativo em Go, inclua um arquivo chamado Procfile
na raiz do pacote de origem.
Para obter detalhes sobre como gravar e usar um Procfile
, consulte Buildfile e Procfile.
exemplo Procfile
web: bin/server
queue_process: bin/queue_processor
foo: bin/fooapp
Você deve chamar a aplicação principal web
e listá-la como o primeiro comando no seu Procfile
. O Elastic Beanstalk expõe a aplicação principal web
no URL raiz do ambiente, por exemplo, http://my-go-env.elasticbeanstalk.com
.
O Elastic Beanstalk também executa quaisquer aplicações cujo nome não tenha o prefixo web_
, mas essas aplicações estão disponíveis somente dentro da instância.
O Elastic Beanstalk espera que os processos sejam executados a partir do Procfile
para serem executados continuamente. O Elastic Beanstalk monitora essas aplicações e reinicia qualquer processo que seja encerrado. Para processos de curta execução, use um comando do Buildfile.
Se o ambiente Go do Elastic Beanstalk usar uma versão da plataforma AMI do Amazon Linux (anterior ao Amazon Linux 2), leia as informações adicionais nesta seção.
Observações
-
As informações neste tópico somente são aplicáveis a ramificações de plataforma com base na Amazon Linux AMI (AL1). As ramificações de plataforma AL2023/AL2 são incompatíveis com as versões anteriores da plataforma Amazon Linux AMI (AL1) e exigem definições de configuração diferentes.
-
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.
nota
As informações neste tópico somente são aplicáveis a ramificações de plataforma com base na Amazon Linux AMI (AL1). As ramificações de plataforma AL2023/AL2 são incompatíveis com as versões anteriores da plataforma Amazon Linux AMI (AL1) e exigem definições de configuração diferentes.
O Elastic Beanstalk configura o proxy nginx para encaminhar solicitações à aplicação no número de porta especificado na propriedade de ambiente PORT
da aplicação. O aplicativo sempre deve escutar nessa porta. Você pode acessar essa variável em seu aplicativo chamando o método os.Getenv("PORT")
.
O Elastic Beanstalk usa o número de porta especificado na propriedade de ambiente PORT
para a porta da primeira aplicação no Procfile
e, depois, incrementa o número da porta em 100 para cada aplicação subsequente no Procfile
. Se a propriedade de ambiente PORT
não estiver definida, o Elastic Beanstalk usará 5000 para a porta inicial.
No exemplo anterior, a propriedade de ambiente PORT
para a aplicação web
é 5000, para a aplicação queue_process
é 5100 e para a aplicação foo
é 5200.
Você pode especificar a porta inicial definindo a opção PORT
com o namespace aws:elasticbeanstalk:application:environment, como mostra o exemplo a seguir.
option_settings:
- namespace: aws:elasticbeanstalk:application:environment
option_name: PORT
value: <first_port_number>
Para obter mais informações sobre como configurar variáveis de ambiente para a aplicação, consulte Configurações de opção.