Sorun Giderme
Bu bölüm, Neta kurulumu ve kullanımı sırasında sık karşılaşılabilecek sorunları açıklar.
Database error finding user
Bu hata genellikle Supabase Auth servisinin Auth tablolarına doğru schema üzerinden erişemediğini gösterir.
Full-stack modda beklenen çözüm:
deploy/supabase/db/init.shiçindesupabase_auth_adminrolününsearch_pathayarı doğru olmalıdır.- Temiz kurulumda Auth migrationları başarılı tamamlanmalıdır.
neta-authlogları kontrol edilmelidir.
Kontrol:
docker logs neta-authTemiz kurulum için:
docker compose -f docker-compose.full.yml down -v
docker compose -f docker-compose.full.yml up -d --buildProduction ortamında down -v kullanmadan önce yedek alınmalıdır.
Database error querying schema
Bu hata da çoğunlukla Auth schema veya migration state problemiyle ilgilidir.
Kontrol edilmesi gerekenler:
neta-authmigrationları başarıyla tamamlandı mı?auth.userstablosu var mı?auth.identitiestablosu var mı?- Auth rolü doğru schema path ile çalışıyor mu?
Full-stack kurulumda bu yapı otomatik hazırlanmalıdır.
İlk kurulum kontrolü yapılamadı
Bu mesaj, uygulamanın şu RPC fonksiyonunu çağırırken hata aldığını gösterir:
public.is_first_admin_setup_available()Olası sebepler:
0009_lock_registration_after_first_admin.sqlçalışmamıştır.- Migration yanlış Supabase projesinde çalışmıştır.
- Uygulama
.env.localüzerinden farklı Supabase projesine bağlanıyordur. - PostgREST schema cache güncel değildir.
- Supabase bağlantı bilgileri hatalıdır.
Full-stack modda migration otomatik uygulanır. App-only modda migrationı doğru hosted Supabase projesinde çalıştırman gerekir.
/register Kayıt Kapalı Diyor
Bu her zaman hata değildir.
Eğer ilk admin veya herhangi bir profil kaydı zaten varsa /register kapanır ve /login sayfasına yönlendirir.
Kontrol mantığı:
select public.is_first_admin_setup_available();false dönüyorsa kayıt kapalıdır.
Migration Yanlış DB'de Çalıştı
Bu sık yapılan bir hatadır.
Örnek senaryo:
- Docker full-stack DB'de migration çalıştırdın.
- Ama
.env.localhosted Supabase projesine bakıyor. - Uygulama hosted Supabase'e bağlandığı için Docker DB'deki migration görünmez.
Çözüm:
- Uygulamanın hangi Supabase URL'ye bağlandığını kontrol et.
- Migrationı aynı projenin veritabanında çalıştır.
- Full-stack test için
.envvedocker-compose.full.ymlkullan.
Docker Daemon Kapalı
Hata örneği:
Cannot connect to the Docker daemonÇözüm:
- Docker Desktop'ı başlat.
- Linux sunucuda Docker servisinin çalıştığını kontrol et:
sudo systemctl status dockerBaşlatmak için:
sudo systemctl start dockerPort Çakışması
Eğer 3000, 8000 veya 54322 portları doluysa Compose başlatılamayabilir.
.env içinde portları değiştir:
NETA_PORT=3010
SUPABASE_API_PORT=8010
POSTGRES_PORT=54323Sonra yeniden başlat:
docker compose -f docker-compose.full.yml up -d --build.env.local Hosted Supabase'e Bakıyor
Lokal geliştirme sırasında pnpm dev çalıştırırsan Next.js .env.local dosyasını okur.
Eğer .env.local içinde şu varsa:
NEXT_PUBLIC_SUPABASE_URL=https://project-ref.supabase.couygulama hosted Supabase'e bağlanır.
Self-host Docker stack için lokal geliştirme yapmak istiyorsan .env.local değerlerini self-host API URL'lerine göre düzenle.
Coolify veya Dokploy Env Eksikleri
Compose dosyası bazı env değerleri eksikse bilinçli olarak fail-fast davranır.
Örnek:
Set NEXT_PUBLIC_SUPABASE_URL in .envÇözüm:
- Environment panelinde tüm zorunlu değerleri gir.
NEXT_PUBLIC_SITE_URLveNEXT_PUBLIC_SUPABASE_URLdeğerlerinin production domainleriyle uyumlu olduğundan emin ol.
Health Check Başarısız
Çalıştır:
sh ./scripts/selfhost-doctor.shHangi kontrolün failed olduğunu incele.
Sık sebepler:
- Migration runner tamamlanmamıştır.
- Proxy henüz healthy olmamıştır.
- Veritabanı başlamamıştır.
- Yanlış env değerleri kullanılmıştır.
Build Hatası
Build için:
pnpm buildDocker build için:
docker compose -f docker-compose.full.yml up -d --buildBuild sırasında environment kaynaklı hata alırsan .env ve Compose env değerlerini kontrol et.
