Manual de instalação Este manual descreve como instalar o Business Intelligence (BI) da CEBI em um Windows Server. Ele se destina à equipe de infraestrutura (TI). Visão geral O BI tem duas partes obrigatórias, publicadas no IIS do mesmo servidor, e uma parte opcional para demonstrações: Parte Pasta no pacote Porta padrão Função API do BI api/ 5080 Conversa com o banco Oracle, busca os dados das fontes e atende a tela. Tela (frontend) frontend/ 5173 A aplicação que os usuários abrem no navegador. APIs de demonstração api-demo/ 8092 e 8093 Dados fictícios para apresentações (opcional). Importante: a tela procura a API no mesmo servidor, na porta 5080 (se a tela abre em http://servidor:5173, ela chama http://servidor:5080/api). Para usar outro servidor ou outra porta para a API, é preciso gerar a tela de novo — fale com a equipe do BI. Conteúdo do pacote BI-2026.10.7.1/ ├── INSTALAR.bat → instalação automática (recomendada) ├── Instalar-BI.ps1 → script executado pelo INSTALAR.bat ├── api/ → API do BI (.NET 8), já compilada ├── frontend/ → tela do BI (arquivos estáticos), já compilada ├── api-demo/ → APIs de demonstração (Node.js) └── README-INSTALACAO.md → este guia, em texto 1. Pré-requisitos Item Observação Windows Server 2016 ou mais novo 2019 ou 2022 recomendados. IIS O instalador instala sozinho, se faltar (inclui Application Initialization). .NET 8 – ASP.NET Core Hosting Bundle https://dotnet.microsoft.com/download/dotnet/8.0 → coluna ASP.NET Core Runtime → Windows → Hosting Bundle. Deve ser instalado depois do IIS (se o IIS for instalado depois, rode o instalador do Hosting Bundle de novo e escolha Reparar). IIS URL Rewrite https://www.iis.net/downloads/microsoft/url-rewrite Node.js 18+ (LTS) https://nodejs.org — somente para as APIs de demonstração. Acesso ao Oracle O servidor precisa alcançar o banco (padrão 192.168.4.2, porta 1521, serviço bi). Usuário no Oracle Schema próprio do BI com permissão para criar tabelas e quota no tablespace — a API cria as tabelas sozinha na primeira inicialização. Portas livres 5080 e 5173 (BI) e 8092/8093 (demonstração). O driver do Oracle já vem dentro da API — não é preciso instalar o Oracle Client no servidor. 2. Instalação automática (recomendada) Instale os pré-requisitos acima (Hosting Bundle, URL Rewrite e Node.js). Copie o BI-2026.10.7.1.zip para o servidor e extraia o zip inteiro. Dê dois cliques em INSTALAR.bat. Ele pede permissão de administrador sozinho. Responda às perguntas: Oracle: servidor, porta, serviço, usuário e senha (o instalador testa a conexão); Administrador inicial do BI: nome, e-mail e senha. Aguarde a etapa 8/8 – Testando. Ao final aparece "BI INSTALADO COM SUCESSO" e o endereço de acesso para os usuários. O que o instalador faz Etapa Ação 1/8 Confere Windows, IIS, Hosting Bundle, URL Rewrite, Node.js e se as portas estão livres. Instala o IIS, se faltar. 2/8 Pede os dados do Oracle (e testa o acesso) e do administrador inicial. 3/8 Copia a aplicação para C:\BI ( api, frontend, api-demo). 4/8 Cria C:\BI\api\appsettings.Production.json com uma chave de segurança aleatória e os endereços do servidor liberados; o arquivo fica legível só por administradores e pela própria API. 5/8 Publica no IIS os sites BI-API (porta 5080) e BI-Web (porta 5173). A API fica sempre ligada (tem rotina de atualização automática das fontes) e guarda as chaves de criptografia em C:\BI\dados\chaves. 6/8 Libera as portas 5080 e 5173 no firewall do Windows. 7/8 APIs de demonstração: cadastra os nomes api.saneamento.cebi e api.os.cebi e cria tarefas agendadas que as deixam ligadas sozinhas, inclusive após reiniciar o servidor. 8/8 Testa a API, a tela e as APIs de demonstração e mostra os endereços de acesso. Opções do instalador Executar pelo PowerShell como administrador: Opção Uso .\Instalar-BI.ps1 -InstallDir D:\BI Instala em outra pasta. .\Instalar-BI.ps1 -SemDemo Não configura as APIs de demonstração. .\Instalar-BI.ps1 -UrlsExtras "http://bi.cebi.local:5173" Libera um endereço extra (por exemplo, um nome cadastrado no DNS). O log de cada execução fica em C:\ProgramData\BI-instalacao-.log (as senhas digitadas não são gravadas). Segurança: a senha inicial do administrador é apagada do arquivo de configuração ao final de uma instalação bem-sucedida — ela só é usada na primeira inicialização. Troque essa senha no primeiro acesso. 3. APIs de demonstração São usadas nas apresentações: a fonte de dados é cadastrada ao vivo no BI. Como quem busca os dados é a API do BI (no servidor, não no navegador), elas precisam rodar no mesmo servidor da API do BI. O INSTALAR.bat já as configura. Para instalar ou atualizar somente as APIs de demonstração, use o pacote pequeno BI-demo-2026.10.7.1.zip: extraia e dê dois cliques em INSTALAR-DEMO.bat. API Endereço para cadastrar no BI Água/Esgoto http://api.saneamento.cebi:8092/v1/ligacoes Ordens de Serviço http://api.os.cebi:8093/v1/ordens Os nomes api.saneamento.cebi e api.os.cebi são cadastrados no arquivo hosts do próprio servidor (apontando para ele mesmo). Como alternativa, podem ser cadastrados no DNS da empresa. As portas 8092/8093 não precisam ser liberadas no firewall. No servidor, as APIs aparecem no Agendador de Tarefas como "BI - API Demo Agua" e "BI - API Demo Ordens de Servico". Plano B (sem Node.js): a API do BI já traz dados fictícios embutidos: http://localhost:5080/api/demo/vendas. 4. Verificar a instalação No navegador, acesse http://:5173. Entre com o e-mail e a senha do administrador. Em Fontes de Dados → + Nova Fonte, cadastre http://api.saneamento.cebi:8092/v1/ligacoes, clique em Testar conexão e confirme a mensagem "Conexão OK". O rodapé da tela mostra a versão instalada (ex.: Versão: 2026.10.7.1). 5. Solução de problemas Sintoma Causa provável Solução Instalador para em "Falta o .NET 8 – ASP.NET Core Hosting Bundle" Hosting Bundle ausente ou instalado antes do IIS. Instale (ou Repare) o Hosting Bundle e rode o INSTALAR.bat de novo. "A API não respondeu" na etapa 8/8 Oracle inacessível ou usuário/senha incorretos. Conferir C:\BI\api\appsettings.Production.json e o acesso ao Oracle. Detalhes: Visualizador de Eventos → Logs do Windows → Aplicativo (origem IIS AspNetCore Module V2). Ao cadastrar fonte: "No such host is known (api.saneamento.cebi…)" Os nomes das APIs de demonstração não estão cadastrados no servidor. Rodar o INSTALAR-DEMO.bat (ou o INSTALAR.bat) no servidor da API do BI. Ao cadastrar fonte: conexão recusada A API de demonstração não está ligada. Conferir as tarefas "BI - API Demo…" no Agendador de Tarefas e se o Node.js está instalado. Aviso "CONFLITO: a porta … já é usada por …" Outro sistema do servidor usa a porta. Avisar a equipe do BI para gerar o pacote com outra porta. Tela abre, mas mostra "Não foi possível conectar ao servidor" A API (porta 5080) está parada ou bloqueada no firewall. Conferir o site BI-API no Gerenciador do IIS e a regra de firewall "BI - API (5080)". 6. Instalação manual (sem o instalador) Use apenas se não for possível executar o INSTALAR.bat. API: copie a pasta api/ para o servidor. Copie appsettings.Production.example.json para appsettings.Production.json e preencha: ConnectionStrings:Oracle — usuário, senha e endereço do Oracle; Jwt:Key — chave secreta com no mínimo 32 caracteres, única deste servidor; Seed:AdminEmail / Seed:AdminPassword — administrador inicial (criado só se o banco não tiver usuários); Frontend:BaseUrl — endereço(s) da tela, separados por vírgula (ex.: http://servidor:5173); DataProtection:KeysPath — pasta fixa para as chaves de criptografia (ex.: C:\BI\dados\chaves), com permissão de escrita para a API. Publique a pasta api/ no IIS (porta 5080), com pool de aplicativos sem código gerenciado, sempre ligado (AlwaysRunning, idle timeout 0) e preload habilitado. O web.config já está pronto. Tela: publique a pasta frontend/ no IIS (porta 5173). O web.config incluído já configura as rotas (requer o URL Rewrite). Libere as portas 5080 e 5173 no firewall. Na primeira inicialização, a API cria as tabelas no Oracle e o usuário administrador automaticamente. 7. Segurança Troque a senha inicial do administrador no primeiro acesso. Não compartilhe o appsettings.Production.json: ele contém a senha do Oracle e a chave de segurança. Mantenha Auth:ReturnDevLinks como false em produção. Avalie publicar com HTTPS (certificado no IIS). Se o servidor usar o mesmo banco Oracle de outro ambiente do BI, painéis e usuários são mantidos, mas fontes de dados com senha/token precisam ter essa senha informada de novo (cada servidor tem as próprias chaves de criptografia).