🐳

Docker Setup

Audissey Docker Environment

Este diretório contém os arquivos necessários para executar o backend da Audissey em containers Docker.

Pré-requisitos

Configuração Inicial

  1. Copie o arquivo de ambiente exemplo:

    cp .env.example .env
    
  2. Configure as variáveis de ambiente no arquivo .env (opcional):

    • Altere as credenciais da base de dados se necessário
    • Ajuste as portas se houver conflitos
    • Adicione outras configurações conforme necessário

Como usar

Levantar toda a stack

docker compose up -d

Ver os logs

# Todos os serviços
docker compose logs -f

# Apenas a API
docker compose logs -f api

# Apenas MongoDB
docker compose logs -f mongodb

Parar os serviços

docker compose down

Parar e remover volumes (cuidado - apaga dados!)

docker compose down -v

Rebuild da API (após mudanças de código)

docker compose up --build api

Serviços disponíveis

API

MongoDB

Estrutura dos arquivos

Conectar à base de dados

String de conexão

mongodb://admin:password123@localhost:27017/audissey?authSource=admin

Usando MongoDB Compass

Desenvolvimento

Hot reload (recomendado para desenvolvimento)

Para desenvolvimento local com hot reload, usa:

npm run start:dev api

E apenas levanta a base de dados com Docker:

docker compose up -d mongodb

Debugging

Para debugging, podes expor a porta de debug no docker-compose.yml:

api:
  ports:
    - '3000:3000'
    - '9229:9229' # Debug port

Troubleshooting

Porta em uso

Se a porta 3000 ou 27017 já estiver em uso, altera as variáveis API_PORT e MONGO_PORT no arquivo .env.

Problemas de conectividade

Verifica se os containers estão na mesma rede:

docker network ls
docker network inspect audissey_audissey-network

Reset completo

Para fazer um reset completo do ambiente:

docker compose down -v
docker system prune -a
docker compose up --build