Ortam Değişkenleri Referansı

Uygulamanın çalışması için gerekli tüm .env değişkenleri burada kategorilere ayrılarak açıklanmıştır.


Uygulama

Değişken Açıklama Örnek
NODE_ENV Ortam tipi. development, test veya production için boş development
SERVICE_PORT HTTP sunucusunun dinleyeceği port 3000
TENANT Tenant (kiracı) adı. Kafka topic isimlerinde kullanılır okul1

Veritabanı

Değişken Açıklama Örnek
DB_HOST PostgreSQL sunucu adresi localhost
DB_PORT PostgreSQL portu 5432
DB_NAME Veritabanı adı yesv3
DB_USER Veritabanı kullanıcısı postgres
DB_PASSWORD Veritabanı şifresi secret

Kafka

Değişken Açıklama Örnek
KAFKA_BROKERS Kafka broker adresleri, virgülle ayrılmış localhost:9092
KAFKA_CLIENT_ID Kafka istemci kimliği yesv3-backend
KAFKA_GROUP_ID Consumer group ID yesv3-group
DISABLE_KAFKA true yapılırsa tüm Kafka dinleyiciler devre dışı kalır true

n8n

n8n webhook URL'leri veritabanında setting tablosunda saklanır, .env'de değil. Sistem Ayarları ekranından yönetilir. Aşağıdakiler sadece bilgi amaçlıdır:

Ayar Adı (DB) Açıklama Varsayılan (kodda)
n8nChatWebhookUrl Header "Deep" asistan webhook URL'si http://n8n.app.cozizle.com/webhook/c42a080e-...
n8nLatexExtractorWebhookUrl PDF/LaTeX içerik çıkarma webhook URL'si http://n8n.app.cozizle.com/webhook/latex-extractor

Yapay Zeka — Gemini

Değişken Açıklama Varsayılan
GEMINI_API_KEY Google Gemini API anahtarı
GEMINI_HTTP_TIMEOUT API istek timeout süresi (ms) 90000
AI_TUTOR_GEMINI_MODEL Eksiklik öğretmeninin kullanacağı Gemini modeli gemini-3.1-flash

Yapay Zeka — OpenAI

Değişken Açıklama Varsayılan
OPENAI_API_KEY OpenAI API anahtarı

AI Öğretmen (Sağ Panel)

Değişken Açıklama Varsayılan
AI_TEACHER_MAX_OUTPUT_TOKENS Öğretmen yanıtı için maksimum token sayısı 900
AI_TEACHER_TTS_MAX_CHARS TTS için maksimum karakter sayısı. Aşılanlar kesilir. 900
AI_TEACHER_TTS_CACHE_TTL_MS TTS önbellek kayıtlarının geçerlilik süresi (ms) 600000
AI_TEACHER_TTS_CACHE_MAX_ITEMS TTS önbelleğinde tutulacak maksimum kayıt sayısı 80
AI_TEACHER_EXTRACT_PDF_TEXT_ON_CHAT Chat sırasında PDF'den metin çıkarma açık/kapalı true
AI_TEACHER_GENERATE_PDF_IMAGES_ON_CHAT Chat sırasında PDF'den sayfa görseli üretme açık/kapalı true

Dosya Depolama (MinIO)

Değişken Açıklama Örnek
MINIO_ENDPOINT MinIO sunucu adresi localhost
MINIO_PORT MinIO portu 9000
MINIO_ACCESS_KEY MinIO erişim anahtarı minioadmin
MINIO_SECRET_KEY MinIO gizli anahtar minioadmin
MINIO_BUCKET Dosyaların yükleneceği bucket adı yesv3
MINIO_USE_SSL SSL kullanımı false

JWT / Auth

Değişken Açıklama Örnek
JWT_SECRET Token imzalama anahtarı gizli-anahtar
JWT_EXPIRES_IN Token geçerlilik süresi 7d

Dış API

Değişken Açıklama Örnek
EXTERNAL_API_KEY Harici sistemlerin x-api-key header ile kullandığı API anahtarı. Tanımlı değilse dış API çalışmaz. gizli-harici-anahtar

Diğer

Değişken Açıklama Örnek
LOG_LEVEL Log seviyesi (info, debug, warn, error) info

Ortam Dosyaları

src/index.js uygulamayı başlatırken NODE_ENV değerine göre farklı .env dosyasını yükler:

NODE_ENV=test        → .test.env
NODE_ENV=development → .dev.env
(diğer)              → .dev.env

Production ortamı için ayrı bir env dosyası tanımı şu an yok — production'da environment değişkenlerinin sistem ortamından (Docker, Kubernetes vb.) sağlanması bekleniyor.

results matching ""

    No results matching ""