Ir para o conteúdo

30 — Instalar Licença API + UI Portal (opcional)

Gerador de arquivos .lic via web — profile licenca, API 8092, UI https://<IP>:8099/licenca/.


1. Visão geral

Item Valor
Profile licenca
Container lorentz-licenca
API (interna) 8092
UI Portal /licenca/ (proxy nginx)
Publish resources/lorentz-licenca-publish/
Script scripts/deploy-licenca.sh

Arquitetura: 23-plano-licenca-api-linux.md


2. Pré-requisitos

  • Stack core + Portal rodando
  • Publish .NET 9 (licenca.zip ou build local)
  • .env com LORENTZ_LICENCA_API_KEY
chmod +x scripts/*.sh

3. Passo a passo

Passo 1 — Obter publish (.NET 9)

No PC de desenvolvimento:

./scripts/build-lorentz-licenca-zip.sh
# → resources/licenca.zip

Na VPS (copiar zip ou gerar no monorepo):

./scripts/extract-lorentz-licenca-publish.sh resources/licenca.zip
# verifica: resources/lorentz-licenca-publish/Lorentz.Licenca.Api.dll

Passo 2 — Configurar .env

nano .env
LORENTZ_LICENCA_API_PORT=8092
LORENTZ_LICENCA_API_KEY=ChangeMe_LicencaApi2026!
LORENTZ_LICENCA_BIND_IP=127.0.0.1
./scripts/render-config.sh

Passo 3 — Deploy

./scripts/deploy-licenca.sh

Sobe lorentz-licenca + rebuild lorentz-portal (proxy /api/licenca/).

Passo 4 — Validar

curl -fsS http://127.0.0.1:8092/health
# Portal UI:
curl -fsS http://127.0.0.1:8099/licenca/ | head

Navegador: http://<IP>:8099/licenca/ (ou https://<IP>:8443/licenca/)

Passo 5 — Firewall

API bind local por padrão — acesso externo via Portal :8099. Não exponha :8092 publicamente.


4. Erros comuns

Erro Solução
Publish ausente extract-lorentz-licenca-publish.sh
LORENTZ_BASEHISTORICA_API_KEY Completar .env — ver doc 27
502 em /api/licenca/ Container lorentz-licenca down — docker compose --profile licenca ps
DLL ausente Rebuild zip no dev e transferir

5. Relacionado