Ir para o conteúdo
Q
QuoteNode

Installation

Variáveis de Ambiente de Deployment

Variáveis de ambiente mínimas usadas pelos guias de instalação, com ligações para a referência completa.

Variáveis de Ambiente de Deployment

Esta página lista as variáveis que a maioria dos operadores precisa durante a instalação. Para o catálogo completo, vê Environment Variables Reference.

Variáveis core obrigatórias

Variável Propósito
DB_URL JDBC URL para PostgreSQL, normalmente jdbc:postgresql://postgres:5432/quotenode dentro do Docker Compose.
DB_NAME Nome da base de dados PostgreSQL.
DB_USERNAME Utilizador da aplicação PostgreSQL.
DB_PASSWORD Password do PostgreSQL. Usa um valor aleatório longo.
DB_ENCRYPTION_KEY Chave hex de 64 caracteres para cifragem a nível da aplicação. Guarda-a de forma segura.
TIMING_TOKEN_SECRET Segredo HMAC para verificações de segurança de timing tokens.
PUBLIC_LINK_PASSWORD_SESSION_SECRET Segredo para sessões de links públicos protegidos por password/PIN.
CORS_ALLOWED_ORIGINS Origens exatas do browser autorizadas a chamar o backend.

Gera segredos em Linux/macOS:

openssl rand -hex 32
openssl rand -base64 32

Variáveis de URL público

Variável Propósito
CORS_ALLOWED_ORIGINS Deve corresponder exatamente ao URL do browser, por exemplo https://crm.example.com.
NOTIFICATIONS_PUBLIC_PREFERENCES_URL URL público para links de preferências de notificação, por exemplo https://crm.example.com/notifications/preferences.
DOMAIN Usado por deployments de Docker Compose com proxy interno. A Coolify normalmente gere domínios fora da app.
SERVICE_URL_FRONTEND Variável de compatibilidade opcional para templates de operador e automatização futura de deployment; o ficheiro compose atual da Coolify não a consome diretamente. Mantém-na alinhada com a origem do frontend se o teu deployment a usar.

Variáveis de email

Variável Propósito
SMTP_HOST Hostname do servidor SMTP.
SMTP_PORT Porto SMTP, normalmente 587.
SMTP_USERNAME Username da conta SMTP.
SMTP_PASSWORD Password SMTP ou app password.
SMTP_AUTH Normalmente true para SMTP de produção.
SMTP_STARTTLS Normalmente true para o porto 587.
NOTIFICATIONS_ENABLED Ativa notificações.
NOTIFICATIONS_EMAIL_ENABLED Ativa a entrega de email para notificações.

Variáveis de PDF, backup e segurança

Variável Valor beta recomendado Notas
PDF_ENABLED true Requer Gotenberg na stack.
FEATURE_2FA_ENABLED true Ativa fluxos de autenticação de dois fatores.
SECURITY_BOT_DETECTION_ENABLED true Mantém ativas as proteções de bot para links públicos.
SECURITY_TRUSTED_PROXIES vazio (detetado automaticamente) Pares de reverse proxy de confiança adicionais (IP/CIDR literais e/ou nomes de host de serviço). Normalmente deixe vazio: o IP do cliente é detetado automaticamente atrás de proxies internos (gamas privadas/loopback) e CDNs como a Cloudflare (via CF-Connecting-IP). Defina apenas para um proxy invulgar cujo par de transporte seja um endereço público. Os cabeçalhos de reencaminhamento de um par direto (não interno) são sempre ignorados. Verifique o modo do resolver em Administração → Segurança → estado efetivo.
SECURITY_IP_WHITELIST vazio Lista de permissões de IP do operador opcional (IP/CIDR separados por vírgulas). Quando ativa, protege toda a superfície de administração, incluindo os ecrãs de início de sessão e 2FA. Prevalece sobre a definição na aplicação e é aplicada no arranque (sem reversão automática — confirme que o seu próprio endereço está abrangido).
SECURITY_IP_WHITELIST_FORCE_DISABLE false Emergência: defina true + reinício para recuperar de um bloqueio da lista de IP (incluindo não conseguir iniciar sessão). Apenas ENV.
SECURITY_IP_WHITELIST_CONFIRMATION_WINDOW_SECONDS 120 Quanto tempo uma ativação/restrição na aplicação fica pendente antes de reverter automaticamente para a lista anterior se a sua sessão não reconfirmar (segurança contra bloqueios). Não se aplica à variável ENV acima.
BACKUP_ENABLED true para produção, opcional para primeiro teste local Usa com um processo de restore testado.
BACKUP_CRON 0 0 2 * * * Diariamente às 02:00 por default.
GEOIP_ENABLED false Apenas interruptor de imposição por país — também o interruptor de emergência. A base carrega e atualiza-se de forma independente (ver GEOIP_AUTO_UPDATE), por isso pode estar pronta enquanto a imposição está desligada. Defina false + reinício para recuperar de um bloqueio de país por GeoIP — isto desliga a imposição de forma fiável, independentemente de existir uma base de dados.
SECURITY_GEOIP_ALLOWED_COUNTRIES vazio Lista de países permitidos ISO 3166-1 alpha-2 (p. ex. PL,DE); em maiúsculas e validada. Vazio = sem restrição.
LOG_LEVEL INFO para primeiro deploy, reduz depois se necessário Usa os diagnósticos de administração para escalada temporária.

Variáveis de verificação de release

Variável Propósito
VITE_RELEASE_CHECK_ENABLED Ativa verificações de release upstream apenas para administradores.
VITE_RELEASE_MANIFEST_URL Faz default a https://quotenode.dev/releases/latest.json.
APP_VERSION Versão de release ou tag da imagem. Pode estar vazio para deployments de source.
APP_CHANNEL alpha, beta, rc, dev ou stable.
APP_COMMIT_SHA Commit SHA embutido nos metadados de build quando disponível.
APP_BUILD_TIME Timestamp de build.
APP_BUILD_NUMBER Número de build do CI.
APP_SOURCE_REF Branch ou tag de source.
APP_IMAGE_TAG Tag da imagem selecionada pelo deployment.

Segurança da licença

Nunca atives o bypass de assinatura num deployment real:

LICENSE_SKIP_SIGNATURE_CHECK=false

Define isto explicitamente como false em ambientes de produção e beta. O ficheiro compose faz default a false quando omitido, mas deployments reais não devem confiar num default implícito para um controlo de segurança de licença. Usa true apenas em ambientes locais de desenvolvimento descartáveis.

Last reviewed: Recently