Professor, boa tarde..
Venho tentando subir um ambiente PHP + Nginx, tentei várias vezes mas nunca dá certo. O meu docker-compose funciona bem, mas já passei pelos mais diversos erros ao tentar subir o zip da minha aplicação).
Depois de muito tentar via o console da AWS (browser), fui tentar pelo CLI da AWS
- Meu projeto no Git (Um simples projeto Laravel com três containers mysql, Nginx e PHP-fpm).
No meu projeto pode observar que tenho um Dockerrun.aws.json e o Seu docker-compose.yml. Usei a ferramenta que traduz o docker-compose.yml em Dockerrun.aws.json.
após a configuração do AWS Config..
aws elasticbeanstalk create-environment --cname-prefix brunobarros-api --application-name brunoba-laravel --environment-name producao --solution-stack-name "64bit Amazon Linux 2018.03 v2.14.0 running Multi-container Docker 18.06.1-ce (Generic)" --option-settings file://options.txt
Conteúdo do meu options.txt..
[
{
"Namespace": "aws:autoscaling:launchconfiguration",
"OptionName": "IamInstanceProfile",
"Value": "aws-elasticbeanstalk-ec2-role"
},
{
"Namespace": "aws:autoscaling:launchconfiguration",
"OptionName": "EC2KeyName",
"Value": "seila"
}
]
*seila é o nome da minha chave, pois já estava cansado de criar chaves e não dar certo ):
{
"ApplicationName": "brunoba-laravel",
"EnvironmentName": "producao",
"Status": "Launching",
"EnvironmentArn": "arn:aws:elasticbeanstalk:us-east-2:164696892635:environment/brunoba-laravel/producao",
"PlatformArn": "arn:aws:elasticbeanstalk:us-east-2::platform/Multi-container Docker running on 64bit Amazon Linux/2.14.0",
"SolutionStackName": "64bit Amazon Linux 2018.03 v2.14.0 running Multi-container Docker 18.06.1-ce (Generic)",
"CNAME": "brunobarros-api.us-east-2.elasticbeanstalk.com",
"Health": "Grey",
"Tier": {
"Version": "1.0",
"Type": "Standard",
"Name": "WebServer"
},
"DateUpdated": "2019-07-07T13:38:29.359Z",
"DateCreated": "2019-07-07T13:38:29.359Z",
"EnvironmentId": "e-nabnhchaee"
}
Meu ElasticBeanStalk deu o seguinte erro...
07-07-2019 14:39:04 UTC+0100 INFO Launched environment: producao. However, there were issues during launch. See event log for details.
07-07-2019 14:39:03 UTC+0100 ERROR Creating security group named: awseb-e-nabnhchaee-stack-AWSEBSecurityGroup-1L58UUOVTNTO8 failed Reason: Resource creation cancelled
07-07-2019 14:39:03 UTC+0100 ERROR Stack named 'awseb-e-nabnhchaee-stack' aborted operation. Current state: 'CREATE_FAILED' Reason: The following resource(s) failed to create: [AWSEBLoadBalancer, AWSEBSecurityGroup].
07-07-2019 14:38:48 UTC+0100 ERROR Creating load balancer failed Reason: API: elasticloadbalancing:CreateLoadBalancer User: arn:aws:iam::164696892635:user/acesso_beanstalk_terminal is not authorized to perform: iam:CreateServiceLinkedRole on resource: arn:aws:iam::164696892635:role/aws-service-role/elasticloadbalancing.amazonaws.com/AWSServiceRoleForElasticLoadBalancing
07-07-2019 14:38:48 UTC+0100 INFO Created security group named: sg-01c2b2faae9daea37
Gostaria de saber se existe algo de errado com o meu Dockerrun.aws.json, ou se pulei algum passo nas configurações.. Acho a idéia do ElasticBeanStalk muito boa, mas essa trabalheira toda as vezes me deixa triste e frustrado..
Existe alguma outra ferramenta para se trabalhar com docker em produção unificando os ambientes de produção com desenvolvimento?