Pular para o conteúdo principal

Guia Docker + Postman (pré-publicação Teams)

Objetivo

Subir o bot localmente em container Docker e validar os fluxos com chamadas Postman simulando atividades do Teams.

Pré-requisitos

  • Docker Desktop instalado e em execução.
  • Porta 3900 livre na máquina (padrão Docker deste projeto).

1. Subir o bot no Docker

docker compose up --build -d
npm run docker:dynamo:init # garante criação das tabelas DynamoDB local
docker compose logs -f bot-handler

Critério de pronto: log contendo Local bot-handler listening on http://localhost:3000.

2. Validar endpoint de saúde

curl http://localhost:3900/health
# Esperado: 200 {"status":"ok"}

3. Rodar simulação no Postman

Importe:

  • Coleção: docs/postman/BI-Agent-Local.postman_collection.json
  • Ambiente Docker: docs/postman/BI-Agent-Docker.postman_environment.json

Use o ambiente BI Agent Docker e execute a sequência descrita em Testes Postman.

4. Encerrar ambiente

docker compose down

5. Opcional — Simular AWS local (Fases D/E)

npm run docker:localstack:up
npm run docker:dynamo:init
npm run localstack:init
npm run smoke:localstack:bot
npm run smoke:localstack:worker
# ou atalho:
npm run docker:localstack:smoke

Endpoint do bot nesse modo: http://localhost:3901

Troubleshooting (PowerShell)

Evite executar docker compose ... 2>&1 no PowerShell — o redirecionamento gera NativeCommandError mesmo com init concluído com sucesso. Use:

npm run docker:dynamo:init
# ou
docker compose --profile test run --rm dynamodb-init