Turtor Docs
Prostředí

Proměnné prostředí

Konfigurace environment proměnných

Přehled

Turtor používá environment proměnné pro konfiguraci všech služeb. Výchozí hodnoty pro lokální vývoj jsou v apps/api/.env.example.

Produkční .env.production nesmí být commitován do repozitáře. Na VPS se nahrává přes pnpm deploy:env.

API proměnné

Aplikace

ProměnnáVýchozí (dev)Popis
NODE_ENVdevelopmentProstředí (development / production)
PORT4405Port API serveru
FRONTEND_URLhttp://localhost:4000URL veřejného webu (pro CORS, emaily)
ADMIN_URLhttp://localhost:4001URL admin dashboardu (pro CORS)
CORS_ORIGIN-Povolené CORS origin (produkce)

Databáze (PostgreSQL)

ProměnnáVýchozí (dev)Popis
DATABASE_HOSTlocalhostHostname databáze
DATABASE_PORT5433Port (offsetovaný pro dev)
DATABASE_NAMEturtorNázev databáze
DATABASE_USERturtorUživatel databáze
DATABASE_PASSWORDturtor_secretHeslo databáze

Redis

ProměnnáVýchozí (dev)Popis
REDIS_HOSTlocalhostHostname Redis
REDIS_PORT6380Port (offsetovaný pro dev)
REDIS_PASSWORD(prázdné)Heslo Redis

Autentizace (JWT)

ProměnnáVýchozí (dev)Popis
JWT_SECRETtestovací klíčTajný klíč pro JWT access tokeny
JWT_REFRESH_SECRETtestovací klíčTajný klíč pro refresh tokeny
JWT_EXPIRATION24hPlatnost access tokenu
JWT_REFRESH_EXPIRATION30dPlatnost refresh tokenu

Autentizace (WorkOS)

ProměnnáVýchozí (dev)Popis
WORKOS_API_KEYsk_test_xxxxxWorkOS API klíč
WORKOS_CLIENT_IDclient_xxxxxWorkOS Client ID
WORKOS_REDIRECT_URIhttp://localhost:4001/auth/callbackCallback URL po OAuth

Platby (Stripe)

ProměnnáVýchozí (dev)Popis
STRIPE_SECRET_KEYsk_test_xxxxxStripe tajný klíč
STRIPE_WEBHOOK_SECRETwhsec_xxxxxStripe webhook signing secret
MOCK_PAYMENTSfalseMock mód (přeskočí Stripe volání)

Úložiště (S3/MinIO)

ProměnnáVýchozí (dev)Popis
AWS_REGIONeu-central-1AWS region
AWS_ACCESS_KEY_IDminioadminS3 access key
AWS_SECRET_ACCESS_KEYminioadminS3 secret key
AWS_S3_BUCKETturtor-uploadsNázev bucketu
AWS_S3_ENDPOINThttp://localhost:9002MinIO endpoint (jen dev)

Email

ProměnnáVýchozí (dev)Popis
SMTP_HOSTlocalhostSMTP server (MailHog pro dev)
SMTP_PORT1026SMTP port
RESEND_API_KEYre_xxxxxResend API klíč (produkce)
EMAIL_FROMnoreply@turtor.czOdesílatel emailů

SMS (Twilio)

ProměnnáPopis
TWILIO_ENABLEDZapnutí SMS (true/false)
TWILIO_ACCOUNT_SIDTwilio Account SID
TWILIO_AUTH_TOKENTwilio Auth Token
TWILIO_PHONE_NUMBEROdesílací telefonní číslo

Frontend proměnné (Vite)

Frontend aplikace používají proměnné s prefixem VITE_, které se kompilují do statického bundlu při buildu:

ProměnnáPopis
VITE_API_URLURL API backendu
VITE_WORKOS_CLIENT_IDWorkOS Client ID pro OAuth
VITE_STRIPE_PUBLISHABLE_KEYStripe publishable key
VITE_ADMIN_URLURL admin dashboardu

Změna VITE_* proměnných vyžaduje nový build Docker obrazu, protože jsou zapečeny do statického JavaScriptu.

Produkční vs. vývojové prostředí

Klíčové rozdíly v konfiguraci:

AspektDevelopmentProduction
PostgreSQL port54335432 (interní Docker)
Redis port63806379 (interní Docker)
Database hostlocalhostpostgres (Docker service name)
Redis hostlocalhostredis (Docker service name)
EmailMailHog (SMTP)Resend API
S3MinIO (localhost:9002)AWS S3
PlatbyMock nebo Stripe testStripe live

Nahrání .env na VPS

# Aktualizace .env.production na VPS
pnpm deploy:env

Toto nahraje lokální .env.production do /opt/apps/turtor/.env na VPS.