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.