← nitronium.dev
docker-compose.yml'e Dokunmadan Eksik Env Var Eklemek: override.yml
2026-06-11
Üçüncü parti bir Docker Compose servisini test ederken MEMORY_SALT gibi bir değişkenin asıl docker-compose.yml'de tanımlı olmadığını gördüm. Dosyayı düzenlemek istemiyordum çünkü upstream ile senkronize kalmak önemliydi.
Docker Compose otomatik olarak aynı dizindeki docker-compose.override.yml dosyasını ana dosyayla birleştirir. Bunu kullanarak sadece ihtiyacım olan servise sadece ihtiyacım olan değişkeni ekledim:
`yaml
docker-compose.override.yml
services:
gateway:
environment:
- MEMORY_SALT=${MEMORY_SALT:-varsayilan-deger}
`
docker compose up komutu her iki dosyayı okuyup birleştiriyor. Ana dosyaya hiç dokunmadım, git diff temiz kaldı.
Aynı yöntemle port yönlendirme, volume mount veya herhangi bir servis konfigürasyonu da override edilebilir. Özellikle başkasının repo'sunu test ederken veya CI ortamlarında ortam-spesifik ayarları ayrı tutmak için kullanışlı.
`bash
Override'ın uygulandığını doğrula
docker compose config | grep MEMORY_SALT
`