Kamal’ı kendiniz barındırmak, özel mesajlaşma platformlarına alternatif olarak gizlilik odaklı ve açık kaynaklı bir çözüm sunar. Bu rehber, Kamal’ı VPS üzerinde Docker konteyneri içinde dağıtmanızı sağlayacak adımları anlatmaktadır ve mesajlaşma hizmetiniz üzerinde tam kontrol sahibi olmayı hedefleyen geliştiriciler ve homelab tutkunları için uygundur.
Ön Koşullar
İlerlemeden önce şunlara sahip olduğunuzdan emin olun:
- Bir VPS sağlayıcı hesabı (Contabo, Hetzner, DigitalOcean, Vultr, Linode)
- Bir alan adı (opsiyonel ama önerilen)
- Linux komut satırıyla temel bilgi
- VPS’nizde Docker kurulu ya da kurma isteği
VPS Sağlayıcısı Seçimi
Ekonomik kendinden barındırma için seçenekleri karşılaştırın:
| Sağlayıcı | Fiyat | Özellikler | Ortaklık Bağlantısı |
|---|---|---|---|
| Contabo VPS | 5.99 EUR/ay | Büyük RAM seçenekleri, SSD depolama | Contabo VPS |
| Hetzner Cloud | 4.15 EUR/ay | Yüksek performans, SSD | Hetzner Cloud |
| DigitalOcean | 6 USD/ay | Kolay kurulum, geniş dökümantasyon | DigitalOcean |
| Vultr | 6 USD/ay | Küresel veri merkezleri | Vultr |
| Linode | 5 USD/ay | Dengeleme özellikleri, güvenilirlik | Linode |
Kapsamlı karşılaştırma için, [tüm VPS karşılaştırması] sayfasına bakabilirsiniz.
VPS Kurulumu
- VPS’nizi dağıtın - tercih ettiğiniz sağlayıcıyı seçin, minimal bir Linux dağıtımı kurun (Ubuntu 22.04 önerilir).
- SSH ile bağlanın:
ssh kullanıcıadınız@vps-ip'niz
- Sistemi güncelleyin:
sudo apt update && sudo apt upgrade -y
- Docker’ı kurun:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
- Docker kurulumunu doğrulayın:
docker --version
Kamal’ı Docker ile Dağıtma
Kamal, dağıtımı kolaylaştırmak için bir Docker imajı sunar. Aşağıdaki adımları izleyin:
1. Bir Docker Compose Dosyası Oluşturun
Kamal için bir dizin oluşturun:
mkdir kamal && cd kamal
docker-compose.yml dosyası oluşturun:
version: '3'
services:
kamal:
image: kamalio/kamal:latest
container_name: kamal
restart: unless-stopped
environment:
- DOMAIN=ornekdomain.com
- PORT=8080
- DEFAULT_CLUSTER_NAME=kamal-cluster
ports:
- "80:80"
- "443:443"
volumes:
- ./config:/app/config
ornekdomain.comyerine alan adınızı veya test ediyorsanız VPS IP adresinizi yazın.
2. SSL’i Yapılandırın (Opsiyonel ama önerilir)
Certbot kullanarak SSL sertifikası alın:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d ornekdomain.com
docker-compose.yml dosyanızı SSL ortam değişkenleri ile güncelleyin veya Kamal’ı SSL’yi yöneten bir ters proxy arkasında çalıştırın.
3. Kamal’ı Çalıştırın
docker-compose up -d
Konteynerlerin çalıştığından emin olun:
docker ps
Artık Kamal örneğiniz alan adınız veya VPS IP adresiniz üzerinden erişilebilir olmalı.
Ek Yapılandırma
Kamal, entegrasyonlar, kullanıcı doğrulaması ve özelleştirilebilir temalar destekler. Bunlar, ortam değişkenleri veya volume ile yerel konfigürasyon dosyaları aracılığıyla yapılandırılır.
Kullanıcı Yönetimi
Kullanıcılar, web arayüzü veya API üzerinden oluşturulabilir. Her zaman HTTPS ve güçlü kimlik doğrulama ile kurulumunuzu güvenli tutun.
Kurulumu Güvenceye Alma
- SSL sonlandırması için Nginx veya Caddy gibi ters proxy kullanın.
- Docker imajlarını düzenli olarak güncelleyin (
docker-compose pull && docker-compose up -d). - Güvenlik duvarı kuralları ile yalnızca gerekli portlara erişim sağlayın.
Sıkça Sorulan Sorular
1. Kamal nedir ve neden kendim host etmeliyim?
Kamal, gizlilik ve esneklik odaklı açık kaynaklı, merkeziyetsiz bir mesajlaşma platformudur. Kamal’ı kendiniz barındırmak, verileriniz üzerinde tam kontrol sağlar, özelleştirme imkanı sunar ve özel bulut hizmetlerine bağımlılığı azaltır. r/selfhosted topluluğu ve awesome-selfhosted projeleri tarafından da desteklenmektedir. Gizlilik odaklı sohbet sunucusu arayan kullanıcılar için idealdir.
2. Kamal’ı burada bahsedilen herhangi bir VPS sağlayıcısında kurabilir miyim?
Evet. Kamal, Docker destekli herhangi bir Linux tabanlı VPS üzerinde çalışabilir. Contabo, Hetzner, DigitalOcean, Vultr ve Linode gibi sağlayıcılar, Docker ile uyumlu AMD64 veya ARM mimarisi sunar. Beklenen kullanıcı sayısına uygun kaynaklara sahip bir sağlayıcı seçin. Her zaman en az 1 GB RAM’inizin olduğundan emin olun, aksi takdirde performans sorunları yaşayabilirsiniz.
3. Kamal kurulumu güvenli ve güncel kalmasını nasıl sağlarım?
Docker imajlarını düzenli olarak güncelleyin:
docker-compose pull
docker-compose up -d
Güvenlik için SSL sonlandırmasını Nginx veya Caddy gibi ters proxy ile yapılandırın. Güvenlik duvarı kurallarıyla gerekli portlara erişimi sınırlandırın. Sunucu işletim sisteminizi en son güvenlik yamalarıyla güncel tutun. Ayrıca, Kamal veya API destekliyorsa iki faktörlü kimlik doğrulaması (2FA) kullanmayı düşünün.
Son Tavsiyeler
- Kamal yapılandırmanızı ve verilerinizi düzenli yedekleyin.
- Tüm kullanıcı hesapları için güçlü ve benzersiz şifreler kullanın.
- Destek ve öneriler için r/selfhosted ve awesome-selfhosted topluluklarına katılın.
Bu adımlarla, VPS’nizde gizlilik ve özerklik sağlayan tam fonksiyonlu self-hosted Kamal sohbet sunucusuna sahip oldunuz. Ek araçlar ve dağıtım seçenekleri için [tüm VPS karşılaştırması] sayfamızı keşfedebilirsiniz. --- END ---