Ir para o conteúdo

32 — Instalar apps core (SQL, CTI, Supervisor, Portal, Monitor)

Passo a passo dos serviços que sobem com deploy-stack.sh / deploy-all.sh — sem profiles opcionais.


Antes de qualquer app

cd ~/omnichannel/lorentz-vps-stack
chmod +x scripts/*.sh
cp .env.example .env
nano .env   # MSSQL_SA_PASSWORD, VPS_PUBLIC_IP, senhas admin

Clone repositório irmão Supervisor:

git clone https://github.com/araguaci/supervisor-php.git ~/omnichannel/supervisor

Deploy core em um comando:

./scripts/check-pre-install.sh
./scripts/render-config.sh
./scripts/deploy-stack.sh
./scripts/validate-install.sh

VPS nova completa (com Issabel): 13-maquina-nova-stack-aws-cli.md


1. SQL Server

Item Valor
Container lorentz-sqlserver
Porta 1433 (bind local por padrão)
Doc ref 05-sql-server.md

Passos

# Ação Comando
1 .env com MSSQL_SA_PASSWORD nano .env
2 Subir docker compose up -d sqlserver
3 Aguardar healthy docker compose ps sqlserver (~60–120 s)
4 Testar docker exec lorentz-sqlserver /opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -P "$MSSQL_SA_PASSWORD" -C -Q "SELECT 1"
5 Restaurar .bak cp LorentzCTI.bak resources/ && ./scripts/restore-sql-bak.sh

2. Lorentz CTI

Item Valor
Container lorentz-cti
Portas 3000, 4000, 8000, 8090 (Monitor API)
Doc ref 07-lorentz-cti-servidor.md

Passos

# Ação Comando
1 Copiar net9.0.zip Gerado no PC dev (build-lorentz-cti-zip.sh) — não na VPS
1b Enviar para VPS scp -i ~/.ssh/issabel-key.pem resources/net9.0.zip ubuntu@<IP>:~/omnichannel/lorentz-vps-stack/resources/
2 Extrair publish ./scripts/extract-lorentz-cti-publish.sh
3 Config INI ./scripts/render-config.sh
4 Subir docker compose up -d --build lorentz-cti
5 Logs docker compose logs -f lorentz-cti
6 Monitor API curl http://127.0.0.1:8090/health

3. Base Histórica {#3-base-historica}

Item Valor
Container lorentz-basehistorica
Porta 8091 (bind local por padrão)
Publish resources/lorentz-basehistorica-publish/

Build no PC, deploy na VPS — igual ao CTI (net9.0.zip). O código-fonte fica em ../server/LorentzDB.Worker/ (monorepo), não no repositório do stack.

Passos

# Ação Onde Comando
1 .env VPS LORENTZ_BASEHISTORICA_API_KEY=ChangeMe_BaseHistorica2026!
2 Build zip PC dev (WSL) export PATH="$HOME/.dotnet:$PATH" · ./scripts/build-lorentz-basehistorica-zip.sh
3 Enviar zip PC dev scp -i ~/.ssh/issabel-key.pem resources/basehistorica.zip ubuntu@<IP>:~/omnichannel/lorentz-vps-stack/resources/
4 Extrair VPS ./scripts/extract-lorentz-basehistorica-publish.sh resources/basehistorica.zip
5 Tabelas SQL VPS (1ª vez) ./scripts/init-basehistorica-tables.sh
6 Subir VPS docker compose up -d --build lorentz-basehistorica
7 Health VPS curl -fsS http://127.0.0.1:8091/health

Erro comum: LorentzDB.Worker.dll ausente no build Docker → publish não extraído ou zip não copiado do PC.

UI no Supervisor em evolução — API consumida via att_config.php.


4. Supervisor

Item Valor
Container lorentz-supervisor
Porta 8080
Código ../supervisor (volume)
Doc ref 08-supervisor-web.md

Passos

# Ação Comando
1 Clone ../supervisor ver acima
2 Config PHP ./scripts/render-config.sh
3 Subir docker compose up -d --build supervisor
4 Firewall ./scripts/open-aws-port-8080.sh
5 Acessar http://<IP>:8080/
6 Atualizar PHP 16-atualizacao-supervisor-web.md

5. Portal Orbitall

Item Valor
Container lorentz-portal
HTTP 8099
HTTPS (PWA) 8443
Doc ref 20-portal-orbitall.md

Passos

# Ação Comando
1 .env URLs PORTAL_PUBLIC_URL, apps em portal.apps.json
2 Render ./scripts/render-config.sh
3 Deploy ./scripts/deploy-portal.sh
4 Firewall HTTP ./scripts/open-aws-port-8099.sh
5 Firewall HTTPS ./scripts/open-aws-port-8443.sh
6 PWA https://<IP>:8443/ — botão Instalar App
7 CTI Dashboard http://<IP>:8099/cti/

6. MonitorOPS

Item Valor
Container lorentz-monitor
Porta 9090
Doc ref 17-dashboard-monitoramento.md

Passos

# Ação Comando
1 Credenciais .env MONITOR_ADMIN_USER, MONITOR_ADMIN_PASSWORD
2 Subir docker compose up -d --build monitor
3 Firewall ./scripts/open-aws-port-9090.sh SEU_IP/32
4 Acessar http://<IP>:9090/
5 Autostart sudo ./scripts/install-systemd-stack.sh

Runbooks: 18-monitor-troubleshooting.md


7. Issabel PBX (fora do compose)

Deploy separado — rede host. Guia completo: 06-issabel-pbx.md ✅

./scripts/render-config.sh
./scripts/deploy-issabel.sh

WebRTC para Webphone: 14-issabel-webrtc-wss.md


Checklist core completo

# Serviço URL / teste
1 SQL Server docker compose ps sqlserver healthy
2 Lorentz CTI :3000 / :8090/health
3 Base Histórica :8091/health
4 Supervisor http://<IP>:8080/
5 Portal http://<IP>:8099/
6 Portal PWA https://<IP>:8443/
7 CTI Dashboard http://<IP>:8099/cti/
8 MonitorOPS http://<IP>:9090/
9 Issabel https://<IP>/

Validação automática: ./scripts/validate-install.sh --external


Apps opcionais (outros guias)

App Guia
Webphone 29
Energy 27
Licença 30
Portainer 31

Índice completo: 28-indice-instalacao-apps.md