Skip to main content
O painel de controle serve tanto as telas do operador quanto o portal do cliente. É um processo separado com seu próprio instalador e seu próprio arquivo de ambiente.
Instale-o depois do gateway. O gateway é dono do schema do banco de dados; o painel apenas lê e escreve linhas nele.Ele não está no caminho da mensagem — um painel fora do ar custa a você a capacidade de fazer alterações, não a capacidade de enviar.

Instalar

O install faz Node, usuário de serviço, diretórios, código-fonte, npm ci, build, ambiente, unidade systemd e depois verifica se ele responde. Ele pergunta antes o que precisa e não altera nada até você concordar.

O que ele deriva

Dado o diretório de configuração do gateway, o instalador lê de lá os tokens operacionais e a conexão de banco somente leitura, em vez de pedir para você copiá-los manualmente.
--config-url nunca é derivada. A conexão de leitura e escrita para as tabelas de configuração é a que pode alterar o que é cobrado dos clientes, portanto ela é sempre fornecida explicitamente.Sem ela, o painel reporta cada domínio de configuração como não editável, em vez de falhar no primeiro salvamento.

A conta de operador são duas variáveis de ambiente

Não há tabela de usuários.
Essa é a forma suportada de alterá-la — ela reescreve o arquivo de ambiente e reinicia a unidade em uma única etapa, em vez de deixar você editar um arquivo que o instalador, por outro lado, promete nunca substituir.

As duas URLs fáceis de trocar

Elas são portas diferentes, transportando coisas diferentes e sem compartilhar caminhos. Ambas as falhas parecem uma indisponibilidade, mas não são.

TLS na frente

O painel fala HTTP simples em PORT (3000 por padrão). Coloque nginx ou similar na frente dele, e defina AUTH_URL para a origem pública — se não definida, um sign-out redireciona para localhost. NODE_ENV=production é definido tanto para o build quanto para a execução, porque isso decide se o cookie de sessão é marcado como seguro.

O sign-in do cliente precisa de e-mail

Um cliente entra por meio de um link mágico. Com FIREFLO_SMTP_HOST ou FIREFLO_SMTP_FROM não definidos, nenhum cliente consegue entrar — o portal diz que o link não pôde ser enviado em vez de falhar silenciosamente, mas ninguém entra. Veja Acesso ao portal.

Atualizando

Substitui o build. Nunca toca no arquivo de ambiente.
Atualize o painel e o gateway juntos. A versão do painel repete o release do gateway contra o qual foi compilado nos seus três primeiros números — 0.7.3.1 combina com o gateway 0.7.3 — e ele verifica o par em tempo de execução e informa quando eles divergem.

Sob um virtualhost

--tenant NOME coloca o painel em /srv/fireflo/NOME/panel como unidade fireflo-NOME-panel, e a mesma palavra nomeia a mesma instância para o instalador do gateway. Com --vhost PATH a raiz muda para PATH/panel, com o gateway em PATH/gateway.
Sob --vhost, CDR_EXPORT_DIR deve estar dentro de uma raiz BindPaths=. Essa falha é silenciosa — exportações são preparadas e depois não podem ser lidas.
Todas as variáveis estão em Ambiente do painel de controle.