Índice do diárioDockup / nota de campo
Note / self-host-flowise

Como hospedar o Flowise por conta própria em 2026: credenciais, armazenamento e URLs públicas

Hospede o Flowise por conta própria com portas corretas, armazenamento persistente, HTTPS, secrets, backups e verificações de upgrade. Saiba como corrigir problemas quando o secret de encriptação muda.

A demonstração mais simples do Flowise comprova que um processo está a escutar na porta 3000. Em produção, são necessárias evidências mais sólidas. O sistema deve passar neste cenário mesmo depois de o container ser substituído: criar um pequeno chatflow, armazenar uma credencial de provider, chamar o endpoint de prediction e continuar a mesma sessão depois da substituição do container.

O Flowise é implementado com um objetivo claro: funcionar como um visual builder para cadeias de LLM e agentes invocáveis. O problema mais comum na implementação é o secret de encriptação mudar ou o diretório de dados montado pertencer a outro UID. Por isso, o tratamento da URL pública e do estado persistente deve receber a mesma atenção que o arranque da imagem.

A arquitetura de produção do Flowise

Separe quatro preocupações no Flowise: ingress, o listener na porta 3000, o estado persistente e os serviços de suporte ou a capacidade local. O contrato de rede do Flowise é uma base de dados suportada quando é necessária mais do que uma configuração descartável de um único node. Mantenha endpoints privados no DNS interno, permita apenas as chamadas de saída necessárias e atribua ao Flowise uma credencial de serviço com escopo limitado.

Execute a transação validada — criar um pequeno chatflow, armazenar uma credencial de provider, chamar o endpoint de prediction e continuar a mesma sessão depois da substituição do container — antes de considerar essa separação concluída. Meça execuções paralelas de flows, document loaders, chamadas ao vector store e a memória consumida por custom nodes, e mantenha o resultado junto do registo da implementação. Isso fornece tanto um critério de aceitação como a primeira baseline de capacidade.

Faça backup do estado que o Flowise não consegue recriar

Faça um inventário de todos os artefactos persistentes: a base de dados do Flowise, as credenciais e os documentos carregados. Monte /root/.flowise antes do bootstrap, escreva dados de exemplo inofensivos e substitua o container para provar que esse caminho é realmente persistente. Inclua também a configuração que altera a forma como os dados armazenados são interpretados, e não apenas o diretório maior.

Defina a retenção, copie os backups para fora do host e execute um restore em clean room. O teste do Flowise estará concluído quando os flows, as credenciais e o conhecimento carregado forem recuperados e um cliente de API existente conseguir executar um flow restaurado. Se os snapshots fizerem parte do plano, use as orientações sobre PITR versus snapshots para documentar o que cada mecanismo consegue recuperar.

Não dê ao Flowise acesso ao host inteiro

Feche a janela de bootstrap assim que existir o primeiro administrador de confiança. O problema concreto do Flowise é manter o acesso predefinido aberto enquanto os flows contêm secrets de providers; o limite mais seguro é proteger o visual builder de forma mais rigorosa do que os endpoints de prediction e nunca expor credenciais de providers a clientes no browser.

Gere FLOWISE_SECRETKEY_OVERWRITE uma vez, mantenha-o fora do Git e preserve-o no recovery manifest, porque alterá-lo pode invalidar o estado encriptado ou assinado da aplicação. A rede privada deve transportar as credenciais das dependências, e os roles dentro do Flowise devem conceder apenas a ação útil mínima. Mantenha os corpos sensíveis dos requests e as respostas dos providers fora dos logs de rotina.

A release gate do Flowise

Crie um fixture pequeno e descartável do Flowise e mantenha-o para cada release. O fixture deve exercitar o workflow real: criar um pequeno chatflow, armazenar uma credencial de provider, chamar o endpoint de prediction e continuar a mesma sessão depois da substituição do container. Registe o digest da imagem, o hostname externo, o endereço da dependência e o resultado esperado, para que outro operador possa repetir o teste mais tarde sem ter de interpretar este guia.

Execute o fixture três vezes. Primeiro, use a implementação nova. Em segundo lugar, substitua o container sem alterar o estado persistente. Em terceiro, restaure o backup num ambiente vazio. A terceira execução só passa quando os flows, as credenciais e o conhecimento carregado forem recuperados e um cliente de API existente conseguir executar um flow restaurado. Durante cada execução, capture a latência e o uso de recursos em torno das execuções paralelas de flows, document loaders, chamadas ao vector store e memória consumida por custom nodes; isso torna-se a baseline para os alertas, em vez de uma percentagem de CPU arbitrária.

Por fim, teste deliberadamente o caminho negativo: negue temporariamente à identidade de teste o acesso a uma base de dados suportada quando for necessária mais do que uma configuração descartável de um único node. Confirme que o Flowise falha de forma visível sem corromper o estado, restaure a condição correta e repita a transação bem-sucedida. Um registo de release com esses quatro resultados é uma evidência mais forte do que screenshots de um dashboard ou uma resposta única de curl.

Inicie o Flowise com defaults observáveis

O primeiro container deve ser fácil de apagar e recriar. Mantenha os dados fora da writable layer, faça o bind da porta 3000 apenas onde o proxy possa alcançá-la e passe a configuração em runtime.

docker run -d \
  --name flowise \
  --restart unless-stopped \
  -p 127.0.0.1:3000:3000 \
  -v flowise-data:/root/.flowise \
  -e FLOWISE_SECRETKEY_OVERWRITE=replace-with-a-long-random-value \
  flowiseai/flowise:latest

Fixe a imagem depois do teste inicial. Leia o erro de arranque mais antigo, em vez da mensagem final de restart, verifique cada mount com docker inspect e acompanhe os logs enquanto cria um pequeno chatflow, armazena uma credencial de provider, chama o endpoint de prediction e continua a mesma sessão depois da substituição do container. Essa sequência distingue um comando de imagem incorreto de um problema de dependência ou permissões.

Torne a origem pública inequívoca

O browser, o cliente de API e o Flowise devem concordar sobre uma única origem. Para isso, defina a URL da aplicação usada por callbacks e clientes embedded. Preserve o host e o protocolo originais, mantendo a porta 3000 indisponível como endereço público alternativo.

O guia de troubleshooting de site indisponível ajuda a distinguir uma rota inacessível de uma aplicação que responde. Essa distinção é importante neste caso: o secret de encriptação muda ou o diretório de dados montado pertence a outro UID. Apenas o primeiro problema é corrigido com alterações no ingress; o segundo exige a análise dos logs do Flowise, do estado ou do workload.

Testes de falha do Flowise

Use criar um pequeno chatflow, armazenar uma credencial de provider, chamar o endpoint de prediction e continuar a mesma sessão depois da substituição do container como smoke test do Flowise após cada implementação. As métricas de suporte são execuções paralelas de flows, document loaders, chamadas ao vector store e memória consumida por custom nodes; crie alertas quando esses recursos se aproximarem de um ponto que degrade a ação do utilizador.

O principal risco de alteração é que component packages, migrações de base de dados e credenciais encriptadas podem falhar quando o Flowise muda de release. Uma release segura começa com um snapshot restaurável e valida qualquer alteração de estado one-way antes de transferir o tráfego. Quando o secret de encriptação muda ou o diretório de dados montado pertence a outro UID, mantenha o container com falha tempo suficiente para ler a sua configuração e o primeiro erro.

Onde o Dockup reduz o trabalho no Flowise

No caso do Flowise, o Dockup é mais útil na fronteira entre uma imagem e um serviço persistente. Mantém a rota para a porta 3000, o TLS, os valores dos secrets e o armazenamento associados durante as substituições de containers, quer o compute pertença ao Dockup quer ao seu servidor ligado.

Conclua com conhecimento da aplicação: defina a URL da aplicação usada por callbacks e clientes embedded; ligue e teste uma base de dados suportada quando for necessária mais do que uma configuração descartável de um único node; e execute esta verificação: crie um pequeno chatflow, armazene uma credencial de provider, chame o endpoint de prediction e continue a mesma sessão depois da substituição do container. Mantenha o resultado como uma verificação da implementação, para que a próxima atualização da imagem seja avaliada pelo comportamento, e não pelo estado do container.

Perguntas frequentes

O que é necessário para uma implementação do Flowise em produção?

Encaminhe o container do Flowise na porta 3000 através de uma única origem HTTPS. O requisito de rede de suporte é uma base de dados suportada quando é necessária mais do que uma configuração descartável de um único node. Não considere o Flowise pronto até conseguir criar um pequeno chatflow, armazenar uma credencial de provider, chamar o endpoint de prediction e continuar a mesma sessão depois da substituição do container.

Que dados do Flowise devem fazer parte de um backup?

Persista /root/.flowise e inclua a base de dados do Flowise, as credenciais e os documentos carregados no mesmo recovery manifest. Um restore limpo do Flowise só passa quando os flows, as credenciais e o conhecimento carregado forem recuperados e um cliente de API existente conseguir executar um flow restaurado.

O Flowise precisa de HTTPS atrás de um reverse proxy?

Use HTTPS para a origem pública do Flowise e mantenha a porta 3000 na rota interna. Aplique corretamente a definição do Flowise: defina a URL da aplicação usada por callbacks e clientes embedded. No Flowise, o HTTPS protege as credenciais ou o conteúdo dos utilizadores durante o transporte e mantém consistente o comportamento dos clientes sensível à origem.

Como deve ser testado um upgrade do Flowise?

Restaure o estado atual do Flowise numa implementação isolada, aplique a versão candidata e repita a transação de aceitação. Preste especial atenção, porque component packages, migrações de base de dados e credenciais encriptadas podem falhar quando o Flowise muda de release. Mantenha a imagem anterior do Flowise até compreender os limites da migração de dados e do rollback.