Self-Hosting Nedir? Kendi Sunucunda Neler Barındırabilirsin?
Self-hosting nedir, neden yapılır, popüler self-hosted uygulamalar (Nextcloud, Vaultwarden, Jellyfin, Gitea, n8n), Docker kurulumu ve bulut hizmetleriyle karşılaştırma.
İçindekiler
Self-Hosting Nedir? Kendi Sunucunda Neler Barındırabilirsin?
Self-hosting, normalde bulut hizmetleri (Google Drive, Dropbox, Netflix, GitHub vb.) aracılığıyla kullandığınız uygulamaları kendi sunucunuzda çalıştırmanızdır. Verileriniz üzerinde tam kontrol sahibi olursunuz, aylık abonelik ücretlerinden kurtulursunuz ve gizliliğinizi korursunuz.
Neden Self-Hosting Yapmalısınız?
1. Gizlilik ve Veri Kontrolü
Bulut hizmetleri verilerinizi analiz eder, reklam profili oluşturur ve üçüncü taraflarla paylaşabilir. Self-hosting ile verileriniz yalnızca sizin sunucunuzda kalır.
Bulut vs Self-Hosting Veri Kontrolü:
Google Drive: Google verilerinizi tarar ve analiz eder
Dropbox: Dosyalarınıza erişim hakkı saklıdır
Netflix: İzleme alışkanlıklarınız takip edilir
Self-Hosted: Verileriniz yalnızca sizin kontrolünüzde
2. Maliyet Tasarrufu
Uzun vadede self-hosting, bulut aboneliklerine göre çok daha ekonomik olabilir.
Aylık Maliyet Karşılaştırması (yaklaşık):
Bulut Hizmetleri:
- Google One 2TB: ~$10/ay
- Dropbox Plus: ~$12/ay
- Netflix Standard: ~$15/ay
- GitHub Pro: ~$4/ay
- Notion Plus: ~$8/ay
Toplam: ~$49/ay
Self-Hosted (REXE VDS):
- Sunucu maliyeti: ~$15-30/ay
- Tüm hizmetler dahil
Tasarruf: ~$20-35/ay
3. Özelleştirme ve Kontrol
Bulut hizmetleri size sınırlı özelleştirme seçeneği sunar. Self-hosting ile uygulamayı istediğiniz gibi yapılandırabilirsiniz.
4. Bağımsızlık
Bulut hizmetleri kapanabilir, fiyatlarını artırabilir veya özelliklerini kaldırabilir. Self-hosting ile bu risklerden bağımsızsınız.
Popüler Self-Hosted Uygulamalar
Dosya Depolama ve Senkronizasyon
Nextcloud — Google Drive Alternatifi
# Docker ile Nextcloud kurulumu
docker run -d \
--name nextcloud \
-p 8080:80 \
-v nextcloud_data:/var/www/html \
-e MYSQL_HOST=db \
-e MYSQL_DATABASE=nextcloud \
-e MYSQL_USER=nextcloud \
-e MYSQL_PASSWORD=sifre \
nextcloud:latest
Nextcloud özellikleri:
- Dosya depolama ve senkronizasyon
- Takvim ve kişiler (CalDAV/CardDAV)
- Video konferans (Talk)
- Ofis belgesi düzenleme (Collabora/OnlyOffice)
- Fotoğraf galerisi
Şifre Yöneticisi
Vaultwarden — Bitwarden Alternatifi
# Docker ile Vaultwarden kurulumu
docker run -d \
--name vaultwarden \
-p 8080:80 \
-v vaultwarden_data:/data \
-e DOMAIN=https://vault.example.com \
-e SIGNUPS_ALLOWED=false \
vaultwarden/server:latest
Vaultwarden özellikleri:
- Şifre yönetimi
- 2FA desteği
- Güvenli not saklama
- Organizasyon ve paylaşım
- Tüm Bitwarden istemcileriyle uyumlu
Medya Sunucusu
Jellyfin — Netflix/Plex Alternatifi
# Docker ile Jellyfin kurulumu
docker run -d \
--name jellyfin \
-p 8096:8096 \
-v /path/to/media:/media \
-v jellyfin_config:/config \
jellyfin/jellyfin:latest
Jellyfin özellikleri:
- Film ve dizi akışı
- Müzik kütüphanesi
- Canlı TV ve DVR
- Çoklu kullanıcı desteği
- Mobil ve TV uygulamaları
Kod Deposu
Gitea/Forgejo — GitHub Alternatifi
# Docker ile Gitea kurulumu
docker run -d \
--name gitea \
-p 3000:3000 \
-p 222:22 \
-v gitea_data:/data \
gitea/gitea:latest
Gitea özellikleri:
- Git repository yönetimi
- Issue tracker
- Pull request sistemi
- CI/CD entegrasyonu
- Wiki
Uptime İzleme
Uptime Kuma — Uptime Robot Alternatifi
# Docker ile Uptime Kuma kurulumu
docker run -d \
--name uptime-kuma \
-p 3001:3001 \
-v uptime_kuma_data:/app/data \
louislam/uptime-kuma:latest
Uptime Kuma özellikleri:
- HTTP/HTTPS izleme
- TCP port izleme
- DNS izleme
- Telegram/Discord/e-posta bildirimleri
- Güzel durum sayfası
Otomasyon
n8n — Zapier/Make Alternatifi
# Docker ile n8n kurulumu
docker run -d \
--name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
-e N8N_BASIC_AUTH_ACTIVE=true \
-e N8N_BASIC_AUTH_USER=admin \
-e N8N_BASIC_AUTH_PASSWORD=sifre \
n8nio/n8n:latest
Blog/CMS
Ghost — Medium/WordPress Alternatifi
# Docker ile Ghost kurulumu
docker run -d \
--name ghost \
-p 2368:2368 \
-v ghost_content:/var/lib/ghost/content \
-e url=https://blog.example.com \
ghost:latest
Docker Compose ile Tam Self-Hosting Stack
# docker-compose.yml
version: '3.8'
services:
nextcloud:
image: nextcloud:latest
ports:
- "8080:80"
volumes:
- nextcloud_data:/var/www/html
environment:
- MYSQL_HOST=db
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=${DB_PASSWORD}
depends_on:
- db
vaultwarden:
image: vaultwarden/server:latest
ports:
- "8081:80"
volumes:
- vaultwarden_data:/data
environment:
- DOMAIN=https://vault.example.com
- SIGNUPS_ALLOWED=false
jellyfin:
image: jellyfin/jellyfin:latest
ports:
- "8096:8096"
volumes:
- /media:/media:ro
- jellyfin_config:/config
uptime-kuma:
image: louislam/uptime-kuma:latest
ports:
- "3001:3001"
volumes:
- uptime_kuma_data:/app/data
db:
image: mariadb:latest
volumes:
- db_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD}
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=${DB_PASSWORD}
volumes:
nextcloud_data:
vaultwarden_data:
jellyfin_config:
uptime_kuma_data:
db_data:
Nginx Reverse Proxy ile SSL
# /etc/nginx/sites-available/self-hosting
server {
listen 443 ssl http2;
server_name cloud.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Donanım Gereksinimleri
| Kullanım Senaryosu | CPU | RAM | Depolama |
|---|---|---|---|
| Temel (Vaultwarden + Uptime Kuma) | 1 vCPU | 1 GB | 10 GB |
| Orta (+ Nextcloud + Gitea) | 2 vCPU | 2-4 GB | 50+ GB |
| Tam Stack (+ Jellyfin + n8n) | 4 vCPU | 4-8 GB | 100+ GB |
| Medya Ağırlıklı (4K streaming) | 4+ vCPU | 8+ GB | 500+ GB |
Self-hosting'e başlamak için REXE'nin VDS planları idealdir. 2 vCPU ve 4 GB RAM ile Nextcloud, Vaultwarden, Gitea ve Uptime Kuma'yı rahatça çalıştırabilirsiniz.
Self-Hosting Artıları ve Eksileri
Artılar
- Tam veri kontrolü ve gizlilik
- Uzun vadede maliyet tasarrufu
- Sınırsız özelleştirme
- Bulut hizmetlerine bağımlılık yok
- Öğrenme fırsatı
Eksiler
- Teknik bilgi gerektirir
- Bakım ve güncelleme sorumluluğu
- Başlangıç kurulum süresi
- Yedekleme sorumluluğu
- Uptime garantisi yok (kendi sorumluluğunuz)
Self-hosting, teknik meraklılar ve gizliliğine önem verenler için mükemmel bir seçenektir. Başlangıç için Vaultwarden ve Uptime Kuma gibi basit uygulamalarla başlayın, deneyim kazandıkça daha karmaşık uygulamalara geçin.
İlgili Makaleler
Coolify Kurulumu: Self-Hosted PaaS ile Uygulama Deployment
Coolify kurulumu, Docker ve Git entegrasyonu, uygulama deployment, veritabanı yönetimi, SSL sertifikaları, environment variables ve Heroku/Netlify alternatifi self-hosted PaaS.
Nextcloud Kurulumu: Self-Hosted Bulut Depolama ve İşbirliği
Nextcloud kurulumu Docker ile, Apache/Nginx yapılandırması, veritabanı kurulumu, SSL sertifikası, dosya senkronizasyonu, uygulama mağazası ve performans optimizasyonu.
Portainer ile Docker Yönetimi: Web Arayüzlü Konteyner Kontrolü
Portainer CE kurulumu, Docker ve Kubernetes yönetimi, stack deployment, volume/network yönetimi, kullanıcı yetkilendirme, webhook ve GitOps entegrasyonu.