Tovább a tartalomhoz

Változók referencia

Ez az oldal az összes elérhető környezeti változó teljes referenciája táblázatos formában.

Részletes dokumentáció:


A Racona Varlock-ot használ a typesafe környezeti változók kezeléséhez. A Varlock az alkalmazás indításakor validálja az összes konfigurációs értéket, így a hibás konfiguráció azonnal kiderül.

A .env fájlban csak a bootstrap credentials marad:

INFISICAL_CLIENT_ID=machine-identity-client-id
INFISICAL_CLIENT_SECRET=machine-identity-client-secret

Minden más secret (adatbázis URL, auth titok, SMTP jelszó stb.) az Infisical-ból érkezik runtime-ban.

Részletek: Infisical integráció →

Offline fejlesztéshez vagy Infisical nélküli használathoz:

VARLOCK_FALLBACK=local
NODE_ENV=development
DATABASE_URL=postgresql://racona:racona123@localhost:5432/racona
BETTER_AUTH_SECRET=lokalis-titok
BETTER_AUTH_URL=http://localhost:3000
ORIGIN=http://localhost:5173
# ... összes többi változó

Terminál
cp .env.example .env

Varlock + Infisical esetén (ajánlott):

INFISICAL_CLIENT_ID=machine-identity-client-id
INFISICAL_CLIENT_SECRET=machine-identity-client-secret

Infisical nélkül (lokális fallback mód):

VARLOCK_FALLBACK=local
NODE_ENV=development
DATABASE_URL=postgresql://racona:racona123@localhost:5432/racona
BETTER_AUTH_SECRET=generalt-veletlen-titok
BETTER_AUTH_URL=http://localhost:3000
ORIGIN=http://localhost:5173

VáltozóKötelezőAlapértelmezettLeírás
NODE_ENVIgen—development, production vagy test
BODY_SIZE_LIMITNem10485760Maximális kérés méret bájtban (10 MB)
RACONA_PORTNem3000Alkalmazás port (Docker host port leképezés)
APP_URLÉles—Alap URL (pl. https://racona.example.com)
ORIGINIgen—CSRF védelem — meg kell egyeznie az alkalmazás URL-jével
VáltozóKötelezőAlapértelmezettLeírás
DATABASE_URLIgen—PostgreSQL kapcsolati sztring: postgresql://USER:PASS@HOST:PORT/DB
POSTGRES_USERIgen—PostgreSQL felhasználónév
POSTGRES_PASSWORDIgen—PostgreSQL jelszó
POSTGRES_HOSTIgenlocalhostPostgreSQL szerver címe
POSTGRES_DBIgen—PostgreSQL adatbázis neve
POSTGRES_PORTIgen5432PostgreSQL port

Megjegyzés: A DATABASE_URL automatikusan épül fel a POSTGRES_* változókból a sémában. Docker Compose használatakor a POSTGRES_HOST értéke postgres (a szolgáltatás neve).

VáltozóKötelezőAlapértelmezettLeírás
APP_NAMENemRaconaMegjelenített alkalmazásnév
APP_LOGO_URLNem—Logó URL — abszolút vagy relatív
EMAIL_USE_LOGONemfalseLogó kép használata e-mailekben szöveg helyett
VáltozóKötelezőAlapértelmezettLeírás
BETTER_AUTH_SECRETÉles—Token aláíró titok (openssl rand -base64 32)
BETTER_AUTH_URLIgen—Auth callback alap URL
REGISTRATION_ENABLEDNemtrueRegisztráció engedélyezése
SOCIAL_LOGIN_ENABLEDNemtrueGoogle bejelentkezés engedélyezése
GOOGLE_CLIENT_IDNem—Google OAuth kliens azonosító
GOOGLE_CLIENT_SECRETNem—Google OAuth kliens titok
VáltozóKötelezőAlapértelmezettLeírás
EMAIL_PROVIDERNemresendsmtp, resend, sendgrid vagy ses
EMAIL_TEST_MODENemfalseE-mailek naplózása konzolra küldés helyett
EMAIL_OTP_EXPIRES_INNem10OTP lejárati idő percben (1–20)
Terminál
EMAIL_PROVIDER=smtp
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_SECURE=false
SMTP_USERNAME=noreply@example.com
SMTP_PASSWORD=jelszó
Terminál
EMAIL_PROVIDER=resend
RESEND_API_KEY=re_...
RESEND_FROM_EMAIL=noreply@example.com
Terminál
EMAIL_PROVIDER=sendgrid
SENDGRID_API_KEY=SG....
SENDGRID_FROM_EMAIL=noreply@example.com
Terminál
EMAIL_PROVIDER=ses
AWS_REGION=eu-central-1
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
VáltozóAlapértelmezettLeírás
SUPPORTED_LOCALEShu,enVesszővel elválasztott támogatott nyelvek
DEFAULT_LOCALEhuAlapértelmezett nyelv
VáltozóAlapértelmezettLeírás
LOG_TARGETSconsoleconsole, file, database (vesszővel elválasztva)
LOG_LEVELerrordebug, info, warn, error, fatal
LOG_DIR./logsNaplófájlok könyvtára
VáltozóKötelezőAlapértelmezettLeírás
ADMIN_USER_EMAILIgen—Az első adminisztrátor felhasználó e-mail címe (db:init / db:reset során használatos)
VáltozóAlapértelmezettLeírás
DEV_MODEfalsePlugin betöltés engedélyezése localhost URL-ekről
VáltozóAlapértelmezettLeírás
DEMO_MODEfalseDemo mód engedélyezése (jelzi a felhasználóknak, hogy demo környezetben futnak)
DEMO_RESET_HOUR4Óra (UTC, 0–23), amikor a demo adatbázis naponta visszaáll
DEMO_RESET_UPLOADS_KEEP—Vesszővel elválasztott feltöltési alkönyvtárak, amelyeket meg kell őrizni visszaállításkor
VáltozóAlapértelmezettLeírás
PLUGIN_PACKAGE_EXTENSIONraconapkgPlugin csomag fájlkiterjesztés
PLUGIN_MAX_SIZE10485760Maximális plugin méret bájtban (max: 100 MB)
PLUGIN_STORAGE_DIR/var/webos/pluginsTelepített plugin fájlok könyvtára
PLUGIN_FILE_MAX_BYTES10485760A pluginok által tárolt fájlok (file_access) mérethatára bájtban. Nem lehet nagyobb a BODY_SIZE_LIMIT-nél

A file_access jogú pluginok fájljai az uploads/plugin-files/ mappába kerülnek (lásd Fájltárolás). A mentésbe a teljes uploads mappát vedd fel: ebben vannak ezek a fájlok, a hátterek, az avatarok és a telepített pluginok.


A pluginok a manifestjükben ütemezett feladatokat deklarálhatnak (scheduledJobs, scheduler jogosultság, lásd Ütemezett feladatok); a core a saját karbantartó feladatait is így futtatja. Az ütemező az alkalmazás folyamatán belül fut, az állapotát az adatbázisban tartja, így nem kell hozzá rendszer-cron. A feladatok az adatbázisban zárolódnak: több alkalmazáspéldánynál is csak egyszer futnak.

VáltozóAlapértelmezettLeírás
SCHEDULER_ENABLEDtrueÜtemezett feladatok futtatása ezen a példányon
SCHEDULER_TICK_SECONDS30Az esedékes feladatok ellenőrzésének gyakorisága (5–3600 mp)
SCHEDULER_START_DELAY_SECONDS15Az első ellenőrzés késleltetése induláskor (mp)
SCHEDULER_MAX_CONCURRENT2Egyszerre futó feladatok példányonként (1–20)
SCHEDULER_JOB_TIMEOUT_SECONDS600Alapértelmezett időkorlát, ha a feladat nem ad meg sajátot (10–3600 mp)
SCHEDULER_MISSED_GRACE_SECONDS300A catchUp: "skip" feladatok ennél későbbi futása kimarad (mp)
SCHEDULER_DEFAULT_TIMEZONEEurope/BudapestA cron kifejezések alapértelmezett IANA időzónája
SCHEDULER_RUN_RETENTION_DAYS30A futásnapló megőrzése (nap)

Terminál
# Teljes stack indítása
bun docker:up
# Csak adatbázis
bun docker:db
# Leállítás
bun docker:down
# Naplók
bun docker:logs

A PostgreSQL adatok racona-data nevű Docker kötetben tárolódnak. Teljes visszaállításhoz:

Terminál
docker compose -f docker/docker-compose.yml down -v

Éles telepítés ajánlott beállítások

Szekció neve “Éles telepítés ajánlott beállítások”
NODE_ENV=production
DEV_MODE=false
PUBLIC_SITE_ENABLED=false
REQUIRE_EMAIL_VERIFICATION=true
BETTER_AUTH_SECRET=<erős-véletlenszerű-érték>
POSTGRES_PASSWORD=<erős-véletlenszerű-érték>
ADMIN_USER_EMAIL=admin@example.com
LOG_TARGETS=console,database
LOG_LEVEL=info