Windows Paylaşımlı Klasörü Docker Container'a Bağlamak

Windows Server 2016'da paylaşılan bir klasörü Windows Server 2022'ye bağlamak kolay ama Docker container'a geçince işler karışıyor. Özellikle CIFS volume, NTLM ve Kerberos kimlik doğrulaması denediğinde başarısız olması yaygın bir sorun.

Sorunun kökü, Docker container'ların host işletim sisteminden farklı bir ağ ve kimlik doğrulama bağlamında çalışmasında yatıyor. Windows container'lar bile CIFS bağlantısında doğrudan AD kimlik bilgilerini kullanamıyor. Çözüm birkaç adımda ilerliyor.

İlk olarak, host makinede (Docker daemon çalışan Windows Server) paylaşıma erişim testi yap. `net use` komutuyla klasörü manuel bağla ve erişebilirsin. Sonra container içinde aynı bağlantıyı kurmaya çalış. CIFS mount yaparken, container'ın host kimlik bilgilerine erişim hakkı olmalı. Docker Compose'ta volume tanımlarken `username` ve `password` belirtebilirsin ama bu güvenlik açısı riskli.

Reklam · TEST
AdSense Test ReklamıYazı arası (gönderi içi) · Yazı arası

Daha güvenli yaklaşım, host makinede bir servis hesabı (service account) oluşturmak ve bunu Docker'a geçmek. Alternatif olarak, paylaşılan klasörü host üzerinde bir yerel dizine bağla, sonra container'a o yerel dizini volume olarak sun. Bu, kimlik doğrulama sorununu bypass eder.

WSL2 ile yaşadığın aynı sorun, WSL2'nin Windows host'tan izole bir Linux çekirdeğinde çalışmasından kaynaklanıyor. WSL2'de CIFS bağlantısı için `sudo mount -t cifs` kullanırken, Windows credential'larını açıkça geçmen gerekiyor. `/etc/fstab` dosyasına kimlik bilgilerini yazma; bunun yerine `/etc/wsl.conf` yapılandırmasını veya `wsl --mount` seçeneğini kullan.

Pratik olarak, eğer AD ortamındaysan ve container'a paylaşılan klasör erişimi lazımsa, en stabil yöntem host üzerinde kalıcı bağlantı kurmak ve bunu container'a volume olarak expose etmek. CIFS volume doğrudan container'dan kullanmak, özellikle Kerberos ile, karmaşık ve sık başarısız oluyor.

Reklam · TEST
AdSense Test ReklamıGönderi altı · Görüntülü
konu hakkında tepkinizi verebilirsiniz