Teknolojiler

← Ana sayfa
Altyapı ve dağıtım

Cloud, Docker & DevOps — hızlı ve güvenilir dağıtım

Tüm uygulamaları Docker ile konteynerleştiriyor, Docker Compose ile (kurumsal projelerde Kubernetes ile) orkestre ediyor, Caddy'yi otomatik SSL'li reverse proxy olarak yapılandırıyor ve dağıtım döngüsünün tamamını GitHub Actions ile otomatikleştiriyoruz — commit'ten üretime.

Docker ve Docker Compose ile konteynerleştirme

Her servisin kendi çok aşamalı (multi-stage) Dockerfile'ı vardır: bağımlılıkları kurup derleyen bir build aşaması ve yalnızca gerekli çıktıları içeren, minimal (distroless veya alpine) bir son aşama. Tipik bir Next.js imajı 150 MB'ın, bir FastAPI imajı 80 MB'ın altında çıkar. İmajlar main'e yapılan her merge'de yeniden derlenir ve anlamsal olarak etiketlenir (`v1.2.3` + `latest`).

Docker Compose tüm yığını tanımlar: frontend, API, DB, Redis, worker. Hassas değişkenler (DB parolası, API anahtarları, Stripe secret) git dışında tutulan `.env` içindedir — imaja asla gömülmez. Compose içindeki health check'ler, bağımlılıkların başlamadan önce hazır olmasını sağlar (DB hazır → API başlar → frontend başlar).

  • `--mount=type=cache` ile build önbelleği — CI'da npm ci önbellekten
  • Optimize edilmiş katman sıralaması: kararlı bağımlılıklar → kaynak kod
  • Kurumsal projeler için Docker secrets veya HashiCorp Vault ile gizli bilgi yönetimi
  • Atomik dağıtım için `restart: unless-stopped` + `docker compose up --no-deps`

Caddy — otomatik SSL'li modern reverse proxy

Caddy 2.8, SSL/TLS'yi ACME (Let's Encrypt veya ZeroSSL) üzerinden otomatik yönetir — süresi dolmuş sertifika yok, elle yapılandırma yok. HTTP/2 ve HTTP/3 (QUIC) varsayılan olarak etkindir. Güvenlik başlıkları (HSTS, X-Frame-Options, CSP), yeniden kullanılabilir snippet'lerle genel olarak ayarlanır. Bildirimsel Caddyfile yapılandırması git'te farkı görülebilir ve sürümlenmiştir.

Rate limiting, gzip/brotli sıkıştırma ve yapılandırılmış JSON loglama, Caddy'nin yerel direktifleriyle etkinleştirilir — nginx modülleri veya karmaşık Apache yapılandırması olmadan. Hassas rotalara (`/admin`, `.env`, `.git`) erişim, genel bir güvenlik snippet'i olarak yapılandırılmış 444 (yanıt yok) döndürür.

  • İlk günden SSL Labs'ta A+ — modern şifre takımlarıyla yalnızca TLS 1.3
  • Dinamik alt alan adlı çok kiracılı (multi-tenant) SaaS için on-demand TLS
  • Kesintisiz reload — `caddy reload` etkin bağlantıları kesmez
  • Caddy logları → Loki → Grafana — trafik analizi ve anomali uyarıları

GitHub Actions CI/CD ve izleme

CI pipeline'ı her PR'da çalışır: lint, tip kontrolü, birim testleri, Docker imajı build'i, güvenlik açığı taraması (Trivy). Hepsi geçerse imaj registry'ye gönderilir ve staging'e dağıtım otomatik yapılır. main'e merge = dağıtım sonrası healthcheck ile üretime otomatik dağıtım. Healthcheck 60 saniye içinde başarısız olursa otomatik geri alma yapılır.

Uygulama metrikleri (gecikme, hata oranı, kuyruk boyutu) için Grafana + Prometheus, log toplama için Loki ile izleme. Slack/e-posta üzerinde yapılandırılmış uyarılar: hata oranı >%1, P95 gecikmesi >500 ms, disk >%85. Better Uptime ile harici uptime izleme — herkese açık SLA paneli talep üzerine sunulur.

  • İmajlarda Trivy güvenlik açığı taraması — Critical CVE'de engelleme
  • Dependabot + patch güncellemeleri için otomatik merge (yeşil CI şartıyla)
  • S3 uyumlu depolamaya otomatik DB yedeği (gecelik, 30 gün saklama)

Avantajlar ve sınırlamalar

Avantajlar

  • Başarısız healthcheck'te otomatik geri alma ile dağıtım.
  • Caddy ile otomatik SSL/TLS — elle yenilenen sertifikanın süresi dolmaz.
  • Tekrarlanabilir ortam: dev, staging ve üretimde aynı Docker imajı.
  • İzleme ve uyarılar (Grafana, Loki) — sorunlar kullanıcılardan önce görülür.

Sınırlamalar

  • Docker Compose, çok düğümlü kurumsal yapılarda Kubernetes gibi ölçeklenmez.
  • İlk CI/CD kurulumu zaman ve DevOps uzmanlığı gerektirir.
  • İmajlar ve loglar disk alanı tüketir — düzenli temizlik gerekir.
  • Tam izleme (Prometheus + Grafana) bakımı yapılacak ek servisler getirir.

Kısa değerlendirme

Docker + Caddy + GitHub Actions, bir VPS'te veya birkaç düğümde güvenilir dağıtım için ideal birleşimdir. Agresif otomatik ölçeklemeli onlarca düğüm için Kubernetes'e geçin.

Teknik özellikler tablosu

YetenekSınır / eşikTipik kullanım
OrkestrasyonDocker Compose, eksiksiz yığınTek düğüm; çok düğüm Swarm/K8s gerektirirVPS, küçük-orta ölçekli projeler
Reverse proxyCaddy 2.8, HTTP/3, otomatik SSLÇok karmaşık kurallar kapsamlı yapılandırma isterÇok alan adlı, çok kiracılı yapılar
CI/CDGitHub Actions, otomatik dağıtımÜcretsiz katmanın ötesinde CI dakikaları ücretlidirOtomatik commit'ten üretime
Tipik maliyetAylık ~5 €'dan başlayan VPSİzleme + yedekleme maliyet eklerTek siteden çok markaya

Docker Compose ve Kubernetes

KriterDocker ComposeKubernetes
Kurulum karmaşıklığıDüşükYüksek
Çok düğümlü ölçekleme / otomatik ölçeklemeSınırlı (tek düğüm)Mükemmel
Uygun olduğu yerVPS, küçük-orta ölçekli projelerBüyük filolar, kurumsal

Sık sorulan sorular

Neden Nginx değil de Caddy?

Caddy, SSL/TLS'yi ACME üzerinden otomatik yönetir, HTTP/2 ve HTTP/3'ü varsayılan olarak etkinleştirir ve kısa, bildirimsel bir yapılandırmaya sahiptir. Nginx aynı sonuç için certbot ve daha fazla elle yapılandırma gerektirir.

Kubernetes'e ihtiyacım var mı?

Çoğu site için hayır. Bir VPS üzerindeki Docker Compose, bir siteyi veya birkaç servisi güvenilir biçimde yönetir. Kubernetes yalnızca agresif otomatik ölçeklemeli onlarca düğümde işe yarar hale gelir.

Kesintisiz dağıtım nasıl çalışır?

GitHub Actions yeni bir imaj üretir, eskisinin yanında başlatır, healthcheck çalıştırır ve ardından trafiği yönlendirir. Healthcheck 60 saniye içinde başarısız olursa önceki sürüme otomatik geri alma yapılır.

Hangi izleme çözümünü öneriyorsunuz?

Metrikler (gecikme, hata oranı) için Grafana + Prometheus, toplanmış loglar için Loki; uyarılar Slack/e-posta üzerinden. Harici uptime için Better Uptime gibi bağımsız bir servis ekliyoruz.

4b2b.net
İş ekosistemi
4conta.ro
Muhasebe
4invoices.net
Faturalama uygulaması
4expenses.net
Masraf yönetimi
4notify.net
Bildirimler
4hosting.net
Barındırma
4database.net
Veritabanları
4buildsite.net
Web sitesi oluşturucu
4myapp.net
Uygulama oluşturucu
4avatars.net
Yapay Zekâ Avatarları
4chaty.net
Yapay Zekâ Sohbet Robotu
4webagency.net
Web ajansı yazılımı
4softedu.net
Eğitim web siteleri
4softcrm.net
CRM platformu
4softerp.net
ERP sistemi
4softhr.net
İK yönetimi
4mystaff.net
Personel portalı
4myprojects.net
Proje yöneticisi
4mycontracts.net
Sözleşmeler
4docs.net
Doküman yönetimi
4appointments.net
Randevular
4marketingonline.net
Pazarlama
4insurance.net
Sigorta
4property.net
Emlak
4lawyers.net
Hukuk yazılımı
4mygarage.net
Oto servis
4driving.net
Sürücü kursları
4fleet.net
Filo yönetimi
4myevents.net
Etkinlikler
4therapy.net
Terapi
4clinics.net
Klinikler
4dental.net
Diş Klinikleri
4restaurants.net
Restoranlar
4beautify.net
Güzellik salonu
4gym.net
Spor salonları
4guards.net
Güvenlik şirketleri
4softvet.net
Veteriner klinikleri
4softauto.net
Otomotiv işletme yazılımı
4construct.net
İnşaat firmaları
4marketplace.net
Pazar yeri
4shopy.net
Online mağaza
4pricing.net
Fiyat karşılaştırma
4salefood.net
Yemek teslimatı
4rentify.net
Kiralama
4transports.net
Taşımacılık
4agencytravel.net
Seyahat acentesi
4hotel.net
Otel yönetimi
4ong.net
STK Yonetimi