Crie sua REST API em serverless com AWS Chalice em minutos!

Thiago E. Cabral
2 min readJan 12, 2019

Para este tutorial, utilizaremos o Chalice, um microframework Python para desenvolvimento e deploy de apps em serverless desenvolvido pela AWS.

Requisitos: Python 3.6, conta AWS e AWS CLI configurado.

1 — Configuração

1.1 — Vamos começar criando um virtual enviroment chamado rest-api-chalice, isolando nosso ambiente:

1.2 — Em seguida, ativamos o virtual enviroment criado:

1.3 — Após ativa-lo, estaremos dentro do virtual enviroment. Vamos instalar o Chalice:

1.4 — Em seguida, iremos criar um novo projeto, ao rodar o comando a baixo será solicitado um nome para o projeto, utilizaremos hello-rest-api:

2 — Desenvolvimento

2.1 — Vamos acessar a pasta do projeto:

Analisando o conteúdo da pasta, visualizamos os arquivos que o Chalice cria por padrão: .chalice/config.json, .gitignore, app.py e requirements.txt.

O arquivo app.py é onde fazemos a implementação do nosso recurso, no entanto, como ele já vem com um exemplo implementado, não iremos mexer, pois não é o foco aqui.

3 — Deploy

Para fazermos o deploy, utilizaremos as credenciais default do AWS CLI, caso tenha dúvidas leia este artigo: Configurar o AWS CLI

Com este ponto superado, podemos seguir:

3.1 — Execute o seguinte comando para realizar o deploy:

3.2 — Em seguida, teremos o log:

Pronto, temos nossa REST API funcionando em ambiente Serverless na AWS.

Obs: Caso ocorra erro de permissão para criar Role durante o deploy, acesse: AWS Console -> IAM -> Users -> Add inline policy:

(Referência) (inglês)

4 — Teste

Para testar, basta abrir Rest API URL retornada, seja no navegador ou via curl:

E teremos o retorno:

5 — Custos

Apesar de irrisórios, vale a pena se atentar aos custos:

--

--