O AWS Lambda oferece velocidades de inicialização otimizadas para as compilações. O AWS Lambda é compatível com compilações mais rápidas devido a uma menor latência de inicialização. O AWS Lambda também é escalado automaticamente, para que as compilações não fiquem esperando na fila para serem executadas. No entanto, há alguns casos de uso não compatíveis com o AWS Lambda. Para esses, use a computação do EC2. Para obter mais informações, consulte Limitações da computação do AWS Lambda.
Tópicos
- Quais ferramentas e runtimes serão incluídos nas imagens do Docker do ambiente de runtime selecionado que são executadas no AWS Lambda?
- E se a imagem selecionada não incluir as ferramentas de que preciso?
- Quais regiões são compatíveis com a computação do AWS Lambda no CodeBuild?
- Limitações da computação do AWS Lambda
- Implantar uma função do Lambda usando o AWS SAM com CodeBuild Lambda Java
- Crie uma aplicação React de página única com o CodeBuild Lambda Node.js
- Atualizar a configuração de uma função do Lambda com o CodeBuild Lambda Python
Quais ferramentas e runtimes serão incluídos nas imagens do Docker do ambiente de runtime selecionado que são executadas no AWS Lambda?
O AWS Lambda é compatível com as seguintes ferramentas: AWS CLI v2, CLI do AWS SAM, git, go, Java, Node.js, Python, pip, Ruby e .NET.
E se a imagem selecionada não incluir as ferramentas de que preciso?
Se a imagem selecionada não incluir as ferramentas necessárias, você pode fornecer uma imagem do Docker do ambiente personalizado que inclui as ferramentas necessárias.
Observe que você precisa das seguintes permissões do Amazon ECR para usar imagens personalizadas para computação Lambda:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecr:GetAuthorizationToken"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ecr:BatchCheckLayerAvailability",
"ecr:GetDownloadUrlForLayer",
"ecr:BatchGetImage"
],
"Resource": "arn:aws:ecr:image-region
:image-account-id
:repository/image-repo
"
}
]
}
Observe também que curl
ou wget
deve ser instalado para usar imagens personalizadas.
Quais regiões são compatíveis com a computação do AWS Lambda no CodeBuild?
No CodeBuild, a computação do AWS Lambda é compatível com as seguintes Regiões da AWS: Leste dos EUA (Norte da Virgínia), Leste dos EUA (Ohio), Oeste dos EUA (Oregon), Ásia-Pacífico (Mumbai), Ásia-Pacífico (Singapura), Ásia-Pacífico (Sydney), Ásia-Pacífico (Tóquio), Europa (Frankfurt), Europa (Irlanda) e América do Sul (São Paulo). Para obter informações sobre as Regiões da AWS onde o CodeBuild está disponível, consulte Serviços da AWS por região
Limitações da computação do AWS Lambda
Há alguns casos de uso não compatíveis com o AWS Lambda. Para esses, use a computação do EC2.
-
O AWS Lambda não é compatível com ferramentas que exijam permissões de raiz. Para ferramentas como
yum
ourpm
, use o tipo de computação do EC2 ou outras ferramentas que não exijam permissões de raiz. -
O AWS Lambda não é compatível com compilações ou execuções do Docker.
-
O AWS Lambda não é compatível com a gravação em arquivos externos a
/tmp
. Os gerenciadores de pacotes incluídos estão configurados para usar o diretório/tmp
por padrão para baixar e referenciar pacotes. -
O AWS Lambda não é compatível com o tipo de ambiente
LINUX_GPU_CONTAINER
e não é compatível com o Windows Server Core 2019. -
O AWS Lambda não é compatível com armazenamento em cache, compilações em lote, tempos limite de compilação personalizados, tempo limite de fila, emblemas de compilação, modo privilegiado, ambientes de runtime personalizados ou runtimes superiores a 15 minutos.
-
O AWS Lambda não é compatível com a conectividade VPC, um intervalo fixo de endereços IP de origem do CodeBuild, EFS, instalação de certificados ou acesso SSH com o Session Manager.