Lokalde geliştir → canlıya al

Raryum DevOps Süreci

Kod nasıl yazılır, nasıl standartlaşır, nasıl canlıya çıkar — uçtan uca. Geliştirici makinesinden production'a giden yolu, her bağlantısıyla görünür kılan bir akış şeması.

Lokal ortam Repo / standart Bulut pipeline
Aşağı kaydır
Senin bilgisayarın

Lokal geliştirme ortamı

Bir geliştirici makinesi katman katman. Windows 11 ana kutusunun içinde, production ile birebir aynı Linux ortamı ve araç zinciri çalışır.

Windows 11 HOST · DEV-PC
VS Code — editör + eklentiler
Claude CodeAI kod ajanı
Dev Containerskapsayıcı geliştirme
GitHub ActionsCI/CD görünürlüğü
PowerShellterminal
Live Servercanlı önizleme
vscode-pdfbelge önizleme
WSL2 Debian — Linux ortamı (production ile aynı)
Docker Desktop — Engine + Compose
Docker Engineruntime
Docker Composeorkestrasyon
Sürüm kontrolü
GitHub Desktop arayüz Git motor
Commit'ler Git üzerinden tutulur; git push ile buluta gönderilir.
Docker, WSL2'yi arka uçta kullanır. Kod ve container'lar burada üretilir — makinenin tamamı tek bir tutarlı geliştirme katmanıdır.
Neden böyle? Dev ortamını production'a benzetmek, “bende çalışıyordu” sorununu daha makinedeyken ortadan kaldırır.
En önemli mesaj

Standartlaştırma — tek gerçek kaynak

Ortamı kurmuyoruz, tanımlıyoruz. Kaynak repo merkezdedir; her geliştirici makinesi kendini ondan türetir.

Merkez

GitHub = Tek Gerçek Kaynak

İki repo, tüm sistemin kanonik tanımı.

Uygulama kodufrontend + backend
raryum-infra/corecompose, traefik, db init
Ortam = Kod

Makine kendini dosyalardan kurar

  • .devcontainer.jsonNode sürümü + eklentiler + araçlar
  • .vscode/extensions.jsonönerilen eklenti listesi
  • .nvmrcsabit Node sürümü
  • docker-compose.ymlsabit imaj etiketleri
Sırlar

Secret Manager

Bitwarden / Vault — .env'in tek kaynağı.

.env değerleri burada yaşaruygulamaya çalışma anında verilir
Asla git'e girmez

Repo'dan türetilir →

Dev1birebir
WSL2 DebianDockerVS CodeGit
Dev2birebir
WSL2 DebianDockerVS CodeGit

Ortamı kurmuyoruz, tanımlıyoruz. Her makine kendini repo'dan kurar — bu yüzden hepsi birebir aynıdır.

Neden böyle? Tek kaynak + “ortam = kod”, yeni bir geliştiriciyi saatler yerine dakikalar içinde aynı kuruluma getirir.

Bilgisayar çökerse?

01 Repo'yu klonla git clone …

Kod ve “ortam = kod” dosyaları geri gelir.

02 .env'i geri yükle Secret Manager →

Sırlar Bitwarden / Vault'tan tekrar alınır.

03 Ayağa kaldır docker compose up

Container'lar sabit imajlarla yeniden doğar.

Makinede tek nüsha değerli hiçbir şey yok. Her şey yeniden doğar.
Neden böyle? Donanım harcanabilir hale gelince, arıza bir krize değil, birkaç dakikalık bir komut dizisine dönüşür.
Lokal makinen Bulut
git push
Senin makinende DEĞİL — bulutta

Bulut pipeline

Push sonrası her şey otomatik akar: pull request'ten canlı yayına. Hiçbir adım manuel sunucu dokunuşu gerektirmez.

GitHub Cloud · GHCR · VPS
01 Yeni Pull Request

Push, GitHub'da bir PR açar.

02 CI (yeşil ise)

Testler geçmeden ilerlenmez.

03 Merge

Onaylanan PR ana dala birleşir.

04 GitHub Actions

deploy.yml tetiklenir.

05 İmajları derle & push et

Frontend + Backend → GHCR

06 Tailscale ile VPS'e bağlan

Özel ağ üzerinden sunucuya erişim.

Neden böyle? Yayın bir kişiye değil, tekrarlanabilir bir boru hattına bağlıdır — aynı kod, her seferinde aynı şekilde canlıya çıkar.
Videoyu izle

Süreci anlatan video

Yukarıdaki akış şemasının eşlik ettiği YouTube videosu: lokalde geliştir → canlıya al, uçtan uca.