Kendi Sunucumu Kurma Yolculuğum

Kendi Sunucumu Kurma Yolculuğum

Hetzner VPS Üzerinde CloudPanel, Docker ve Portainer

Bu yazıda, blogda anlatacağım tüm servislerin (n8n, Vaultwarden, AnythingLLM, Trilium Next, Beszel, OpenWebUI vb.) üzerinde çalıştığı altyapıyı özetliyorum: Hetzner VPS + Ubuntu 24.04 + CloudPanel + Docker + Portainer. Diğer yazılarda ayrıntıya girmeden bu sayfaya link vereceğim.


Sunucu Altyapısı: Hetzner VPS CX33

Servislerimi fiziksel bir makine yerine bulutta bir VPS üzerinde çalıştırıyorum. Tercihim:

  • Sağlayıcı: Hetzner
  • Plan: CX33 (2 vCPU, 8 GB RAM, 80 GB disk – zamanla değişebilir)
  • İşletim Sistemi: Ubuntu 24.04

Bu yapıyı seçmemin başlıca nedenleri:

  • Evde donanım, elektrik, internet ve yedek güç yönetmek zorunda kalmıyorum
  • Hetzner panelinden snapshot ve ek disk gibi özelliklerle sunucuyu gerektiğinde büyütüp küçültebiliyorum
  • Avrupa lokasyonu sayesinde gecikme süreleri makul

Bu sunucu üzerinde hem klasik web siteleri / panel tabanlı projelerimi hem de Docker tabanlı servislerimi birlikte koşturuyorum.


CloudPanel ile Başlangıç (ve Docker Kararı)

Yola CloudPanel ile başladım. Amacım:

  • Web siteleri ve klasik web uygulamaları için kolay bir kontrol paneline sahip olmak
  • Nginx/Apache, PHP, veritabanı ve SSL gibi işleri panel üzerinden hızlıca yönetmek
  • Aynı sunucuda daha sonra Docker tabanlı servisler de koşturabilmek

Başta aklımda “mail sunucusu olan bir panel” kullanmak vardı. CloudPanel dokümantasyonunda gezerken Docker ile mailcow kurulumu için hazırlanmış şu rehbere denk geldim:

https://www.cloudpanel.io/docs/v2/guides/applications/mailcow/

CloudPanel ekibi bu rehberde, mailcow’un Docker ile CloudPanel’in üzerinde sorunsuz çalıştığını açıkça anlatıyor. Benim için kırılma noktası burasıydı:

“CloudPanel kendi dökümantasyonunda Docker’la çalışan bir mail çözümünü destekliyorsa,
demek ki CloudPanel + Docker ikilisi aynı sunucuda problem çıkarmadan yaşayabiliyor.”

Böylece:

  • CloudPanel’i temel panelim olarak kullanmaya devam etmeye,
  • Tüm ek servisleri ise Docker konteynerleri içinde çalıştırmaya karar verdim.

Maili sonunda Zoho’ya taşısam da, Docker’ı gönül rahatlığıyla kullanma kararını bu dokümantasyon sayesinde verdim.

CloudPanel’in kurulumunu ve temel ayarlarını ayrı bir yazıda daha detaylı anlatacağım:
CloudPanel ile Web Siteleri ve Uygulama Yönetimi


Docker ve Portainer: Konteyner Dünyası

Sunucudaki asıl “oyuncaklarım” Docker konteynerleri. Şu an çalışan servislerimin çoğu konteyner olarak ayakta: n8n, Vaultwarden, AnythingLLM, Trilium Next, Beszel, OpenWebUI vb.

Neden Docker?

  • Her servis izole bir ortamda çalışıyor
  • Bağımlılık çatışmaları neredeyse sıfıra iniyor
  • Taşınabilirlik yüksek: Başka bir VPS’e geçerken compose dosyaları ve volume’ları taşımam çoğu zaman yeterli
  • Popüler servisler için hazır imajlar sayesinde kurulum dakikalar sürüyor

Docker’ı komut satırından yönetmek mümkün; ama günlük kullanımda Portainer işimi çok kolaylaştırıyor:

  • Konteynerleri, volume’ları ve network’leri tek arayüzde görebiliyorum
  • Yeni stack (docker-compose) tanımlarını web arayüzünden ekleyebiliyorum
  • Log’lara ve kaynak kullanımına hızlıca bakabiliyorum

Docker ve Portainer kurulumunu, klasör yapımı ve yedekleme mantığımı bir sonraki yazıda teknik olarak detaylandıracağım:
Docker ve Portainer ile Konteyner Altyapım


Mail Sunucusu: Neden Kendi Sunucumda Değil?

Başta mail sunucusu da kurmayı düşünüyordum; panel ararken CloudPanel’i de bu nedenle keşfettim. Ancak sonunda kararımı değiştirdim ve:

  • Mail altyapısı için Zoho Mail kullanıyorum.

Sebebi basit: Mail sunucusu bakım gerektiren ve hata kaldırmayan bir servis.

  • IP itibar yönetimi, spam filtreleri, DKIM/SPF/DMARC kayıtları, blacklist’ler vs. ciddi zaman istiyor
  • “Mail server bakımına zaman harcamaktansa, asıl projelerime odaklanmak” istedim

Bu yüzden kendi domain’imin DNS kayıtlarını Zoho’ya uygun şekilde ayarlayıp mail işini dışarıya devrettim. Böylece:

  • Sunucuda ek bir mail servisi koşturmuyorum
  • Güvenilirlik ve teslim edilebilirlik tarafında işi profesyonel bir servise bırakmış oluyorum

Bu tercihin teknik detaylarını ve DNS ayarlarını ayrıca yazacağım:
Neden Mail Sunucusunu Dışarıya Taşıdım? Zoho Mail Tercihim


DNS Katmanı: Cloudflare

Tüm domain ve subdomain yönetimini Cloudflare üzerinden yapıyorum:

  • A ve CNAME kayıtlarını buradan yönetiyorum
  • Zoho ve diğer servisler için gerekli SPF, DKIM, DMARC ve TXT kayıtlarını buradan ekliyorum
  • CDN ve güvenlik özelliklerinden ihtiyaç oldukça faydalanıyorum

Avantajları:

  • DNS güncellemeleri genelde çok hızlı yayılıyor
  • Arayüz kullanımı sade
  • SSL/TLS, güvenlik ve cache ayarlarını tek panelden yönetmek mümkün

Servis yazılarında, ilgili subdomain’lerin Cloudflare tarafındaki ayarlarına kısaca değineceğim. Tümünü bir arada anlatan ayrı bir yazı da planlıyorum:
Cloudflare ile DNS ve Güvenlik Katmanı


Hangi Servisler Çalışıyor?

Bu altyapı üzerinde şu anda aktif olarak kullandığım başlıca servisler:

  • n8n – Otomasyon ve iş akışları
  • Vaultwarden & Vaultwarden-Backup – Şifre yöneticisi ve otomatik yedekleme
  • AnythingLLM + Redis + Postgres – Kendi LLM altyapım
  • Trilium Next – Not ve bilgi yönetimi
  • Portainer – Docker yönetim arayüzü
  • Beszel & Beszel-Agent – Sunucu ve servis izleme
  • OpenWebUI – LLM arayüzü

Bu yazı, hepsinin üzerinde koştuğu “ortak zemin”. Her servis için ayrı bir blog yazısı hazırladığımda, altyapı detayıyla ilgilenenleri bu sayfaya yönlendireceğim.

Örneğin n8n yazısında şu şekilde bir not olacak:

Bu n8n kurulumu Docker konteyneri olarak, Hetzner’deki Ubuntu 24 sunucum üzerinde çalışıyor.
Altyapının genel yapısını merak ediyorsanız:
Hetzner VPS Üzerinde CloudPanel, Docker ve Portainer Altyapım
Docker ve Portainer tarafını daha teknik görmek isterseniz:
Docker ve Portainer ile Konteyner Altyapım

Bu Seride Sırada Ne Var?

Bu giriş yazısından sonra sırada şu yazılar olacak:

  1. Docker & Portainer Kurulum ve Yapılandırma
    Docker ve Portainer ile Konteyner Altyapım
  2. CloudPanel Kurulumu ve Temel Kullanım
    CloudPanel ile Web Siteleri ve Uygulama Yönetimi
  3. DNS ve Mail Altyapısı (Cloudflare + Zoho Mail)
    Cloudflare DNS ve Zoho Mail Kurulumu
  4. Yapay Zekâ Servisleri: Claude, OpenAI, Gemini Entegrasyonlarım
    Ücretli Yapay Zekâ Modellerini Projelerimde Nasıl Kullanıyorum?
  5. Servis yazıları (n8n, Vaultwarden, Trilium, Beszel, AnythingLLM, OpenWebUI …)