Baza danych i media
Baza danych
NovaDocs używa Prisma. Na produkcji powinien być Postgres.
Aktualizacja schematu
Gdy zaktualizujesz aplikację i zmienił się schemat:
bash
npx prisma db pushUżyj prawdziwego DATABASE_URL (lokalny .env lub produkcja).
Docker:
bash
docker compose exec app npx prisma db pushWskazówki Supabase
- Na Vercel używaj transaction pooler (port 6543) +
pgbouncer=true - Tryb session ma niski limit połączeń i potrafi wywalić błędy pod obciążeniem
- Opcjonalnie:
?schema=novadocsdla osobnego schematu
Uploady mediów
Gdy ktoś wgrywa obraz lub plik:
- Supabase Storage — jeśli jest
SUPABASE_SERVICE_ROLE_KEY - W przeciwnym razie przechowywanie w bazie — bajty w Postgresie, serwowane z
/api/media/file/...
Nie potrzebujesz folderów na dysku serwera pod uploady.
Włączenie Supabase Storage
- W Supabase → Project Settings → API skopiuj klucz service_role
- Dodaj do env:
env
SUPABASE_URL="https://TWOJ_PROJEKT.supabase.co"
SUPABASE_SERVICE_ROLE_KEY="eyJ..."- Redeploy / restart
NovaDocs w razie potrzeby utworzy publiczny bucket novadocs-media.
