Bir Laravel uygulamasını VPS’ye dağıttıysanız, yaşadığınız zorlukları bilirsiniz. Sunucuya SSH ile girmek, Nginx yüklemek, PHP-FPM yapılandırması yapmak, MySQL ayarlamak, SSL sertifikaları oluşturmak, dağıtım betikleri yazmak… ve her projede aynı işlemi tekrar etmek zorundasınız.
Uzun bir süre boyunca Laravel Forge’a bel bağladım. Gerçekten harika bir yazılım. Ancak aylık yaklaşık 12 dolar (ve ekipler için daha fazlası) maliyetleri, birkaç sunucu yönettiğinizde hızla yükselebiliyor. RunCloud için de benzer bir durum söz konusu.
Bu sebeple, kendi çözümümüzü geliştirmeye karar verdik ve ardından açık kaynak olarak sunduk.
SiteKit’i tanıtmaktan mutluluk duyuyoruz.
SiteKit, neredeyse Forge’un yaptığı her şeyi gerçekleştiren kendi kendine barındırılan bir sunucu yönetim platformudur:
- Server Provisioning – Ubuntu VPS’nizi belirtiyorsunuz, bir komut çalıştırıyorsunuz ve tam yığını (Nginx, PHP 8.x, MySQL/MariaDB, Redis, Node.js, Supervisor) yüklüyor.
- Git Deployments – GitHub/GitLab ile bağlantı kurarak sıfır kesinti ile dağıtım yapabilirsiniz.
- SSL Sertifikaları – Ücretsiz Let’s Encrypt ile otomatik yenileme.
- Veritabanı Yönetimi – Terminale dokunmadan veritabanları ve kullanıcılar oluşturabilirsiniz.
- Team Access – Uygun rol yönetimi ile çoklu kullanıcı desteği.
Fark ne? Bunu kendiniz barındırıyorsunuz. Aylık ücret yok. Satıcıya bağlı kalma durumu yok.
Teknoloji Yığını
Laravel’de tamamen belirledik:
- Laravel 12
- Filament 3 (tüm yönetici paneli için)
- Livewire 3
- Jetstream (yetkilendirme + takımlar)
- Tailwind CSS
Sunucu ajanı, yönetilen sunucularda çalışan ve Laravel’den dağıtılan işleri yerine getiren küçük bir Go ikili dosyasıdır. Yaklaşık 5MB boyutunda ve oldukça verimlidir.
Node.js Hakkında Ne Peki?
Bu aslında yakın zamanda eklenen bir özellik. Birçok geliştiricinin (bunu kendimiz de dahil) Next.js ve Express uygulamalarını Laravel ile birlikte dağıttığını fark ettik. Bu yüzden uygun Node.js desteği ekledik:
- Otomatik Supervisor işlem yönetimi
- Sağlık durumu kontrolü
- Ters proxy yapılandırması
- npm, yarn ve pnpm desteği
Artık bir Next.js uygulamasını, Laravel kadar kolay bir şekilde dağıtabilirsiniz.
Ekran Görüntüleri
Kontrol panelinin görünümü:
Gerçek zamanlı metriklerle sunucu genel görüntüsü.
Üretim için Hazır mı?
Son birkaç gündür yaklaşık 15 sunucuyu yöneterek dahili olarak kullanıyoruz. Stabil, ancak Forge kadar savaş testi yapılmış olduğunu söyleyemem. Ancak kod tabanı temiz. Laravel ve Filament ile rahat olan, onu kolayca genişletebilir veya sorunları kendisi çözebilir. Açık kaynak olmanın güzelliği burada.
Deneyin
Proje GitHub’da mevcut: https://github.com/avansaber/sitekit
Dokümantasyon README’dedir. Temel kurulum adımları:
git clone https://github.com/avansaber/sitekit.git
cd sitekit
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan make:filament-user
Eğer denerken geri dönüş yaparsanız memnun olurum. Bir sorun açın, bir tartışma başlatın veya burada bir yorum bırakın. Sürekli olarak geliştirmekteyiz ve topluluk geri bildirimi özelliklerin önceliklendirilmesine yardımcı olmaktadır.
Sırada Neler Var?
Şu anda üzerinde çalıştığımız konular:
- Daha kolay kendi barındırma için Docker desteği
- Daha fazla bulut sağlayıcı entegrasyonu
- Daha iyi yedekleme yönetimi
- Redis ve kuyruk izleme
Bu, sizin veya ekibiniz için bir sorunu çözüyorsa, GitHub’da bir yıldız vermeyi unutmayın. Ve eğer hatalar bulursanız (muhtemelen bulacaksınız), lütfen rapor edin!
Bu proje https://www.avansaber.com tarafından geliştirilmiştir. Geliştirici araçları üretiyoruz ve Laravel projeleri üzerinde çalışıyoruz.
Kaynak: Orijinal Makale


