Deploy AWS ECS + API Gateway — ecosif-moviments

Público-alvo: DevOps / SRE
Objetivo: Configurar o serviço ecosif-moviments na AWS com ECS e uma única API Gateway. URL final: https://app.ecosif.com.br/ecosif-moviments. Este documento não cobre criação de banco de dados.


1. Arquitetura e mapeamento na API Gateway

Path (API Gateway) Target Descrição
/ecosif-moviments / /ecosif-moviments/{proxy+} ECS ecosif-moviments (ALB) Lançamentos, lotes, consolidação, encerramento, importação

2. Context path

Configurar context path /ecosif-moviments:


3. Variáveis de ambiente para ECS (ecosif-moviments)

3.1 Servidor

Variável Obrigatória Descrição Valor em ECS
ECOSIF_MOVIMENTS_PORT Sim* Porta HTTP do contentor 8080
SERVER_SERVLET_CONTEXT_PATH Sim Prefixo da aplicação /ecosif-moviments

3.2 Banco de Dados (PostgreSQL)

Variável Obrigatória Descrição Exemplo
POSTGRES_HOST Sim Host do PostgreSQL ecosif-db.xxxxx.us-east-1.rds.amazonaws.com
POSTGRES_PORT Sim Porta 5432
POSTGRES_DB Sim Nome do banco ecosif
POSTGRES_USER Sim Usuário ecosif_moviments
POSTGRES_PASSWORD Sim Senha (secret)

3.3 JWT e CORS

Variável Obrigatória Descrição Valor para app.ecosif.com.br
AUTH_TOKEN_SECRET Sim Chave JWT (igual ao ecosif-auth) (secret)
TOKEN_EXPIRATION Sim Vida do token (ms) 86400000
ECOSIF_CORS Sim Origens CORS https://app.ecosif.com.br

3.4 JPA / Flyway / AWS S3 / Logs

Variável Obrigatória Descrição Valor típico
HIBERNATE_DDL_AUTO Sim* DDL Hibernate validate
ECOSIF_FLYWAY_ENABLED Não Migrações na subida true ou false
ECOSIF_ENVIRONMENT Não Identificador de ambiente prod
AWS_ACCESS_KEY_ID Conforme uso AWS S3
AWS_SECRET_ACCESS_KEY Conforme uso AWS
AWS_DEFAULT_REGION Conforme uso Região us-east-1
AWS_S3_BUCKET Conforme uso Bucket (import, purge, etc.)
LOG_FORMAT Não Logback json

4. ECS (task definition)

Para lista completa de variáveis e pastas S3, ver operational.md.