docker-compose.yml içeren projelerinizi VDS Panel üzerinden deploy edin. Servis bağımlılıkları, volume yönetimi, env inject ve scale up/down işlemleri arayüzden.
#docker
#docker compose
#container
#orkestrasyon
VDS Panel Ekibi
Ürünü geliştiren ekip
~8 dk
okuma
Teknik
kategori
Modern uygulamalar artık tek container’dan ibaret değil. API sunucusu, veritabanı, cache, queue, worker, tipik bir web uygulaması 4-6 container ister. Docker Compose bu ekosistemi tek bir YAML dosyasında tanımlamanıza ve tek komutla çalıştırmanıza izin verir.
Bu yazıda Docker Compose’un ne olduğunu, VDS Panel’in Compose projelerini nasıl yönettiğini ve production’da Compose kullanımının pratik ipuçlarını anlatacağız.
Bir bakışta
1 YAML
Tüm stack
∞
Servis sayısı
Otomatik
Bağımlılık yönetimi
Hot
Config reload
Docker Compose nedir?
Compose, birden fazla Docker container’ın birbirleriyle konuşmasını, paylaşımlı ağa bağlanmasını, volume’larını ve restart politikalarını tek bir YAML’da tanımlamaktır. Örnek:
VDS Panel bu dosyayı algılar, ${DB_PASS} değişkenini secret vault’tan alır, beş container’ı sağlıklı sırayla ayağa kaldırır. Worker servisini 2 instance olarak çalıştırır.
Scaling
Compose deploy.replicas ile basit scaling destekler. Panel arayüzünde bu sayıyı slider ile değiştirebilirsiniz. 2 → 5 worker çıkarmak tek tık.
State'li vs state'siz servisler
Scaling için service state’siz olmalı. Session bilgisi memory’de değil Redis’te, upload’lar diskte değil MinIO’da. Panel state’li servisi (postgres gibi) scale etmenize izin vermez, çünkü tek instance olması gerekir.
Network yönetimi
Compose varsayılanda her proje için dedike network oluşturur. Servisler birbirlerine container adıyla erişir (postgres:5432, redis:6379). Dış dünyaya açılması istenen port’lar ports: directive’iyle belirtilir.
VDS Panel güvenlik için:
Sadece public port’lar internet’e çıkar
Localhost’a bind edilmiş servisler (127.0.0.1:3000:3000 gibi) sadece nginx proxy’den erişilebilir
Intra-container trafik tamamen izole
Volume yönetimi
Persistent veriler volume’larda tutulur. VDS Panel volume’ları:
Proje adıyla prefix’ler (çakışma olmaz)
Günlük otomatik yedekler (age veya gpg ile şifreli)
30 gün retention
S3 veya R2 upload destekli
docker compose down volume’ları silmez; veri güvende kalır. Sadece docker compose down -v dediğinizde silinir (panel varsayılan olarak volume’u korur).
Env dosyası güvenliği
.env dosyalarını asla git’e commit etmeyin. Panel env yönetimi:
Değişkenler panel DB’sinde şifrelendirilir
Runtime’da container’a inject edilir
Dosyaya yazılmaz, process environment’ında sadece
Admin panel UI’dan değişken yönetimi
Sonuç
Docker Compose, modern multi-container uygulamalarınızı tek YAML dosyasında tanımlayıp yönetmenin standart yolu. VDS Panel bu dosyayı anlar, hepsini otomatik ayağa kaldırır ve ölçeklenme, log izleme, env yönetimi gibi işlemleri arayüzden yönetmenize izin verir.
Kubernetes’e geçmeye hazır mısınız diye emin değilseniz, Compose ile başlayın. Proje büyüdüğünde panelin K3s modülü sizi bekliyor. Detaylar için iletişim formundan ulaşın.