Skip to content

Infraestrutura

🐳 Infraestrutura e Contêineres

O ambiente do motor de rastreio é isolado utilizando Docker, garantindo que as dependências do Playwright e do Node.js rodem de forma consistente.

Dockerfile

O arquivo de imagem baseia-se na imagem oficial do Playwright e é responsável por preparar o ambiente do Crawler:

  • Imagem Base: Utiliza mcr.microsoft.com/playwright:v1.61.1-jammy, que contém o Ubuntu Jammy e os binários pré-instalados dos navegadores.
  • Workdir: Define /app como o diretório de trabalho padrão.
  • Dependências: Copia o package.json, executa npm install e copia o restante do código.
  • Comando Padrão: Executa npm start.

Docker Compose (docker-compose.yml)

Orquestra o contêiner do crawler e o integra à rede principal onde o banco de dados está exposto.

  • Serviço (crawler-rastreio): Mantém o contêiner nomeado como crawler_rastreio e configurado com restart: unless-stopped.
  • Rede: Conecta-se à rede externa anhanguerapricingcombr_foconopreco-network, permitindo comunicação direta com o banco de dados PostgreSQL.
  • Volumes: Mapeia o diretório local para /app, facilitando o desenvolvimento e a persistência dos módulos node.
  • Execução em Background: Utiliza o comando tail -f /dev/null para manter o contêiner ativo em background indefinidamente, aguardando os gatilhos dos scripts de scraping.