Przejdź do treści
Q
QuoteNode

Instalacja

Zmienne środowiskowe wdrożenia

Minimalny zestaw zmiennych środowiskowych używanych przez przewodniki instalacji, z odnośnikami do pełnego opisu.

Zmienne środowiskowe wdrożenia

Ta strona zawiera listę zmiennych, które większość operatorów potrzebuje podczas instalacji. Pełny katalog znajdziesz w Opisie zmiennych środowiskowych.

Wymagane zmienne podstawowe

ZmiennaPrzeznaczenie
DB_URLAdres URL JDBC dla PostgreSQL, zazwyczaj jdbc:postgresql://postgres:5432/quotenode wewnątrz Docker Compose.
DB_NAMENazwa bazy danych PostgreSQL.
DB_USERNAMENazwa użytkownika aplikacji PostgreSQL.
DB_PASSWORDHasło do PostgreSQL. Użyj długiej, losowej wartości.
DB_ENCRYPTION_KEY64-znakowy klucz szesnastkowy do szyfrowania na poziomie aplikacji. Przechowuj go bezpiecznie.
TIMING_TOKEN_SECRETTajny klucz HMAC do weryfikacji bezpieczeństwa tokenów czasowych.
PUBLIC_LINK_PASSWORD_SESSION_SECRETTajny klucz dla sesji linków publicznych chronionych hasłem/PIN-em.
CORS_ALLOWED_ORIGINSDokładne adresy pochodzenia przeglądarki, które mogą wywoływać backend.

Generowanie sekretów w systemie Linux/macOS:

openssl rand -hex 32
openssl rand -base64 32

Zmienne publicznego adresu URL

ZmiennaPrzeznaczenie
CORS_ALLOWED_ORIGINSMusi dokładnie odpowiadać adresowi URL przeglądarki, na przykład https://crm.example.com.
NOTIFICATIONS_PUBLIC_PREFERENCES_URLPubliczny adres URL do linków z preferencjami powiadomień, na przykład https://crm.example.com/notifications/preferences.
DOMAINUżywane przez wdrożenia Docker Compose z wewnętrznym proxy. Coolify zazwyczaj zarządza domenami poza aplikacją.
SERVICE_URL_FRONTENDOpcjonalna zmienna kompatybilnościowa dla szablonów operatorów i przyszłej automatyzacji wdrożenia; obecny plik compose Coolify nie korzysta z niej bezpośrednio. Utrzymuj ją zgodną z adresem pochodzenia frontendu, jeśli Twoje wdrożenie jej używa.

Zmienne e-mail

ZmiennaPrzeznaczenie
SMTP_HOSTNazwa hosta serwera SMTP.
SMTP_PORTPort SMTP, zazwyczaj 587.
SMTP_USERNAMENazwa użytkownika konta SMTP.
SMTP_PASSWORDHasło do SMTP lub hasło aplikacji.
SMTP_AUTHZazwyczaj true dla produkcyjnego SMTP.
SMTP_STARTTLSZazwyczaj true dla portu 587.
NOTIFICATIONS_ENABLEDWłącza powiadomienia.
NOTIFICATIONS_EMAIL_ENABLEDWłącza dostarczanie powiadomień przez e-mail.

Zmienne PDF, kopii zapasowych i bezpieczeństwa

ZmiennaZalecana wartość w wersji betaUwagi
PDF_ENABLEDtrueWymaga Gotenberg w stosie.
FEATURE_2FA_ENABLEDtrueWłącza przepływy dwuskładnikowego uwierzytelniania.
SECURITY_BOT_DETECTION_ENABLEDtrueUtrzymuje aktywne zabezpieczenia linków publicznych przed botami.
SECURITY_TRUSTED_PROXIESpuste (wykrywane automatycznie)Dodatkowe zaufane peery reverse proxy (literalne IP/CIDR i/lub nazwy hostów usług). Zwykle zostaw puste: IP klienta jest wykrywane automatycznie za wewnętrznymi proxy (zakresy prywatne/loopback) i CDN-ami jak Cloudflare (przez CF-Connecting-IP). Ustaw tylko dla nietypowego proxy, którego peer transportowy ma adres publiczny. Nagłówki przekazujące od bezpośredniego (niewewnętrznego) peera są zawsze ignorowane. Sprawdź tryb resolvera w Administracja → Bezpieczeństwo → stan efektywny.
SECURITY_IP_WHITELISTpusteOpcjonalna operatorska lista dozwolonych IP (IP/CIDR oddzielone przecinkami). Po włączeniu obejmuje całą powierzchnię administracyjną, łącznie z ekranami logowania i 2FA. Nadrzędna wobec ustawienia w aplikacji i egzekwowana przy starcie (bez auto-rollbacku — upewnij się, że Twój adres jest objęty).
SECURITY_IP_WHITELIST_FORCE_DISABLEfalseAwaryjne: ustaw true + restart, aby odzyskać dostęp po blokadzie listy IP (również gdy nie da się zalogować). Tylko ENV.
SECURITY_IP_WHITELIST_CONFIRMATION_WINDOW_SECONDS120Jak długo włączenie/zawężenie listy w aplikacji pozostaje oczekujące, zanim automatycznie wróci do poprzedniej listy, jeśli sesja nie potwierdzi ponownie (ochrona przed blokadą). Nie dotyczy powyższej zmiennej ENV.
BACKUP_ENABLEDtrue dla produkcji, opcjonalne dla pierwszej lokalnej próbyUżywaj razem z przetestowanym procesem przywracania.
BACKUP_CRON0 0 2 * * *Domyślnie codziennie o 02:00.
GEOIP_ENABLEDfalseTylko przełącznik egzekwowania wg krajów — zarazem przełącznik awaryjny (break-glass). Baza ładuje się i aktualizuje niezależnie (zob. GEOIP_AUTO_UPDATE), więc może być gotowa, gdy egzekwowanie jest wyłączone. Ustaw false + restart, aby odzyskać dostęp po blokadzie kraju przez GeoIP — to niezawodnie wyłącza egzekwowanie, niezależnie od obecności bazy.
SECURITY_GEOIP_ALLOWED_COUNTRIESpusteLista dozwolonych krajów ISO 3166-1 alpha-2 (np. PL,DE); wielkie litery i walidacja. Puste = brak ograniczeń.
LOG_LEVELINFO dla pierwszego wdrożenia, obniż później w razie potrzebyUżyj diagnostyki administratora dla tymczasowego zwiększenia poziomu.

Zmienne sprawdzania wersji

ZmiennaPrzeznaczenie
VITE_RELEASE_CHECK_ENABLEDWłącza sprawdzanie nowych wersji przez administratora.
VITE_RELEASE_MANIFEST_URLDomyślnie https://quotenode.dev/releases/latest.json.
APP_VERSIONWersja wydania lub tag obrazu. Może być puste dla wdrożeń ze źródeł.
APP_CHANNELalpha, beta, rc, dev lub stable.
APP_COMMIT_SHASHA commitu osadzone w metadanych kompilacji, gdy dostępne.
APP_BUILD_TIMEZnacznik czasu kompilacji.
APP_BUILD_NUMBERNumer kompilacji CI.
APP_SOURCE_REFGałąź lub tag źródłowy.
APP_IMAGE_TAGTag obrazu wybrany przez wdrożenie.

Bezpieczeństwo licencji

Nigdy nie włączaj pomijania weryfikacji podpisu w prawdziwym wdrożeniu:

LICENSE_SKIP_SIGNATURE_CHECK=false

Ustaw tę zmienną wyraźnie na false w środowiskach produkcyjnych i beta. Plik compose domyślnie ustawia false gdy zmienna jest pominięta, ale prawdziwe wdrożenia nie powinny polegać na domyślnej wartości dla kontroli bezpieczeństwa licencji. Użyj true tylko w jednorazowych środowiskach lokalnego rozwoju.

Last reviewed: Recently