Files
neta/content/07-dokploy-kurulum.md
T
Poyraz Avsever 03b03d253d Add comprehensive installation and operational documentation for Neta
- Introduced "Kurulum Modları" to explain full-stack and app-only installation options.
- Created detailed guides for "Full-Stack Kurulum", "Coolify Kurulumu", "Dokploy Kurulumu", and "App-Only Kurulum".
- Documented the process for creating the first admin account and the registration lock mechanism.
- Added operational guidelines covering health checks, backups, restores, and logging.
- Explained environment variables used in Neta installations and their significance.
- Provided troubleshooting tips for common issues encountered during setup and operation.
- Outlined security measures and limitations of the MVP self-host model.
2026-06-14 11:12:52 +03:00

129 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: Dokploy Kurulumu
description: Neta'yı Dokploy üzerinde self-host etme adımları.
order: 7
---
# Dokploy Kurulumu
Dokploy üzerinde Neta'yı yayınlamak için önerilen yol full-stack Docker Compose kurulumudur. Bu kurulumda Neta, kendi PostgreSQL ve Supabase uyumlu servisleriyle birlikte çalışır.
## Yeni Compose App Oluştur
Dokploy panelinde yeni bir Compose app oluştur.
Repository olarak Neta repository'sini seç ve Compose dosyası olarak şunu kullan:
```text
docker-compose.full.yml
```
## Environment Hazırlığı
Neta için gerekli env değerlerini üret:
```bash
node scripts/generate-full-stack-env.mjs
```
Çıkan değerleri Dokploy environment bölümüne ekle.
Production için özellikle şu değerleri düzenle:
```env
NEXT_PUBLIC_SITE_URL=https://app.example.com
NEXT_PUBLIC_SUPABASE_URL=https://api.example.com
```
`JWT_SECRET`, `POSTGRES_PASSWORD`, `NEXT_PUBLIC_SUPABASE_ANON_KEY` ve `SUPABASE_SERVICE_ROLE_KEY` değerlerini gizli bilgi olarak sakla.
## Servis Yönlendirmeleri
Neta web uygulaması:
```text
neta-web:3000
```
Bundled Supabase API:
```text
neta-supabase-proxy:8000
```
olarak yönlendirilmelidir.
Önerilen domain yapısı:
```text
app.example.com -> neta-web:3000
api.example.com -> neta-supabase-proxy:8000
```
Bu yapı, tarayıcı tarafındaki Auth, REST ve Storage çağrılarının doğru proxy'ye gitmesini sağlar.
## Deploy Süreci
Dokploy deploy başlattığında:
1. `neta-db` başlar.
2. Supabase Auth kendi tablolarını hazırlar.
3. Storage ve PostgREST servisleri başlar.
4. `neta-migrations` Neta SQL dosyalarını uygular.
5. Proxy healthy olduktan sonra web uygulaması başlar.
Bu sıra Compose içindeki dependency kurallarıyla yönetilir.
## İlk Admin Hesabı
Deploy tamamlandıktan sonra:
```text
https://app.example.com/register
```
sayfasını aç.
İlk kullanıcı oluşturulduktan sonra kayıt ekranı kapanır. Daha sonra giriş için:
```text
https://app.example.com/login
```
sayfası kullanılır.
## Dokploy Sonrası Kontrol
Şunları kontrol et:
- Web domaini açılıyor mu?
- API domaininde `/health` endpointi cevap veriyor mu?
- İlk admin oluşturulabiliyor mu?
- Giriş yapılabiliyor mu?
- Dokploy servis loglarında migration hatası yok mu?
API health kontrolü örneği:
```text
https://api.example.com/health
```
## Güncelleme
Yeni sürüme geçmeden önce yedek al:
```bash
sh ./scripts/selfhost-backup.sh
```
Ardından Dokploy üzerinden yeni deploy başlat.
## Dikkat Edilmesi Gerekenler
- `docker-compose.yml` değil, full-stack kurulum için `docker-compose.full.yml` kullanılmalıdır.
- `NEXT_PUBLIC_SUPABASE_URL` dışarıdan erişilebilir olmalıdır.
- Service role key hiçbir zaman client tarafında paylaşılmamalıdır.
- PostgreSQL volume kalıcı olmalıdır.
- Storage volume kalıcı olmalıdır.