Files
Ege Can Komur f3604d96b8 docs: production env example + Coolify deploy rehberi
.gitignore'da '.env*' pattern'i .env.example'ı da engelliyordu.
'!.env.example' ile istisna eklendi — .env.local hala gizli kalıyor.

.env.example temizlendi — sadece gerçek kullanılan 4 değişken:
- NEXT_PUBLIC_APPWRITE_ENDPOINT
- NEXT_PUBLIC_APPWRITE_PROJECT_ID
- NEXT_PUBLIC_APPWRITE_DATABASE_ID
- NEXT_PUBLIC_APPWRITE_MEDIA_BUCKET_ID

APPWRITE_API_KEY opsiyonel (session-cookie tabanlı auth aktif).

DEPLOY.md eklendi:
- Coolify app oluşturma adımları
- Environment variables tam liste
- Build sonrası kontroller
- Gitea webhook bilgisi
- Domain yönlendirme (3 seçenek)
- Production checklist
2026-05-20 19:53:38 +03:00

2.8 KiB
Raw Permalink Blame History

Deployment Rehberi — Coolify

Önkoşullar

  1. Coolify'da yeni bir Application oluştur:

    • Source: Git → ssh://git.kovaksoft.com:2222/kovakmedya/kovakyazilim.git
    • Branch: main
    • Build Pack: Nixpacks (otomatik Next.js algılar) veya Dockerfile yoksa Nixpacks
    • Domain: örn. kovakyazilim.com veya yeni.kovakyazilim.com
    • Port: 3000
  2. Build & Start command'ları:

    • Install: npm ci
    • Build: npm run build
    • Start: npm start

Environment Variables (Coolify > Environment)

NEXT_PUBLIC_APPWRITE_ENDPOINT=https://db.kovaksoft.com/v1
NEXT_PUBLIC_APPWRITE_PROJECT_ID=69f27b51000a5bee46ce
NEXT_PUBLIC_APPWRITE_DATABASE_ID=kovak-yazilim-db
NEXT_PUBLIC_APPWRITE_MEDIA_BUCKET_ID=kovak-yazilim-media

APPWRITE_API_KEY şu anda kullanılmıyor — mimari session cookie tabanlı. İleride cron/scheduled job eklersen Appwrite Console'dan key oluştur.

Build sonrası kontroller

  1. Site yükleniyor mu? → https://[domain]/
  2. Admin login çalışıyor mu? → https://[domain]/admin/login
    • İlk admin kullanıcısını Appwrite Console > Auth > Users üzerinden oluştur
  3. Cookie banner çıkıyor mu? → Anasayfa açıldığında 800ms sonra
  4. WhatsApp float + sticky mobil bar görünüyor mu?

Gitea Webhook

Coolify, Gitea'dan push webhook'unu otomatik yapılandırır:

  • URL (Gitea > Settings > Webhooks): https://admin.kovaksoft.com/webhooks/source/gitea/events/manual
  • Event: push
  • Branch filter: main

Her git push origin main Coolify'da otomatik build + deploy tetikler.

Domain yönlendirmesi

Mevcut WP sitesi kovakyazilim.com'da. Geçiş seçenekleri:

Yaklaşım Açıklama
A. Tek seferlik geçiş DNS kaydını Coolify'a yönlendir. WP yedeğini al, sonra kapat.
B. Test subdomain'i yeni.kovakyazilim.com ile Next.js'i yayınla, test et, ardından ana domain'i değiştir.
C. Hibrit Eski WP eski.kovakyazilim.com'a taşı, ana domain'de Next.js.

Önerilen: B — test ortamında doğrula, sonra geçiş.

Production'a alma checklist

  • Coolify'da app oluşturuldu, ENV'ler girildi
  • İlk build başarılı (npm run build 39 route üretmeli)
  • Appwrite Console'da admin user oluşturuldu
  • /admin/login çalışıyor
  • Anasayfa, hizmetler, projeler, iletişim formu sınanmış
  • WhatsApp + telefon CTA çalışıyor
  • Cookie banner görünüyor
  • SSL aktif (Coolify Let's Encrypt otomatik)
  • WP yedeği alındı (ihtiyaç olursa)
  • DNS yönlendirildi

Sonradan eklenecekler

  • GTM ID: /admin/seo üzerinden gtm_id alanına gir → Consent Mode v2 ile uyumlu otomatik yüklenir
  • Müşteri logoları: /admin/site → "Müşteri logoları" alanına URL ekle
  • Blog yazıları, projeler, ekip fotoları: /admin/* üzerinden