Git ile Basit Kod Dağıtımı: Adım Adım Deploy Akışı

Katılım
Eyl 2026
Konular
1
Mesajlar
1
Tepki puanı
0
Görüntülenme
0
1. Git ile dağıtımda neden hazırlık dosyaları (örn. .gitignore) kritik?
Dosyaların gereksiz transfer edilmesini önler; sadece kod ve yapılandırma dosyaları gönderilir.
Örneğin, node_modules veya venv klasörleri .gitignore’da işaretlenir.

2. Dağıtım sırasında hangi dosyaları çekmeliyim?
src/, config/, docker-compose.yml ve Dockerfile
public/, static/ gibi statik dosyalar da aynı anda çekilir.
Gereksiz dosyaları .git/info/exclude ile hariç tutabilirim.

3. Git repo’ndan sunucuya nasıl yönlendirilir?
1. Sunucuda git clone ile repo çekilir.
2. git pull --ff-only ile en güncel commit alınır.
3. docker compose up -d --build ile konteynerler yeniden başlatılır.
git pull origin main
docker compose up -d --build

4. Deploy sırasında bir hata olursa hızlıca eski sürüme nasıl geri dönülür?
1. git reflog ile son başarılı commit’leri görebilirim.
2. git reset --hard <eski_commit> komutuyla eski sürüme dönerim.
3. docker compose up -d ile eski konteynerler yeniden başlatılır.
git reset --hard abc123
docker compose up -d

5. CI/CD aracılığıyla otomatik deploy nasıl yapılandırılır?
GitHub Actions örneği:
runs-on: ubuntu-latest
- uses: actions/checkout@v3
ssh ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} <<'EOF'
cd /var/www/myapp && git pull origin main && docker compose up -d --build

6. Sunucu tarafında rollback için hazır snapshot nasıl alınır?
docker compose down && docker compose pull && docker compose up --force-recreate
docker system prune -f komutu ile eski konteyner, image ve cache temizlenir.

7. Dağıtım sonrası logları ve performansı izlemek için hangi araçlar önerilir?
docker logs -f myapp_container
htop veya top ile CPU/Memory kullanımı kontrol edilir.
Otomasyonda prometheus ve grafana ile KPI’lar izlenebilir.

Sorularınız varsa, hangi dosya yapısının deploy sürecini etkilediğini merak ediyor musunuz?
 
Geri
En Üst