Docker ile Visual Studio geliştirme sorunlarını giderme

Şunlar için geçerlidir: Visual Studio

Visual Studio Container Tools ile çalışırken, uygulamanızı oluştururken veya hata ayıklarken sorunlarla karşılaşabilirsiniz. Bu makalede, sorunlara yönelik bazı yaygın sorun giderme adımları tanıtılacaktır.

Birim paylaşımı etkinleştirilmedi. Windows için Docker CE ayarlarında birim paylaşımını etkinleştirme (yalnızca Linux kapsayıcıları)

Dosya paylaşımının yalnızca Docker ile Hyper-V kullanıyorsanız yönetilmesi gerekir. WSL 2 kullanıyorsanız, aşağıdaki adımlar gerekli değildir ve dosya paylaşım seçeneği görünmez. Bu sorunu çözmek için:

  1. Bildirim alanında Windows için Docker'a sağ tıklayın ve ardından Ayarlar'ı seçin.

  2. Kaynaklar>Dosya Paylaşımı'nı seçin ve erişilmesi gereken klasörü paylaşın. Sistem sürücünüzün tamamını paylaşmak mümkündür ancak önerilmez.

    Paylaşılan sürücülerin ekran görüntüsü.

İpucu

Visual Studio, Paylaşılan Sürücüler yapılandırılmadığında size sorar.

Hata ayıklama başlatılamıyor

Bu sorunun bir nedeni, kullanıcı profili klasörünüzde eski hata ayıklama bileşenlerinin bulunmasıyla ilgili olabilir. Sonraki hata ayıklama oturumunda en son hata ayıklama bileşenlerinin indirilmesi için bu klasörleri kaldırmak için aşağıdaki komutları yürütebilirsiniz.

  • del %userprofile%\vsdbg
  • del %userprofile%\onecoremsvsmon

Uygulamanızda hata ayıklarken ağa özgü hatalar

Konak makinenizdeki ağ ile ilgili bileşenleri yenileyen Temizleme Kapsayıcısı Ana Bilgisayar Ağı'ndan indirilebilen betiği yürütmeyi deneyin.

Bağlamalar reddedildi

macOS için Docker kullanırken /usr/local/share/dotnet/sdk/NuGetFallbackFolder klasörüne başvururken bir hatayla karşılaşabilirsiniz. Klasörü Docker'daki Dosya Paylaşımı sekmesine ekleyin.

Docker kullanıcı grubu

Kapsayıcılarla çalışırken Visual Studio'da aşağıdaki hatayla karşılaşabilirsiniz:

Docker Desktop'ı kullanabilmek için geçerli kullanıcının 'docker-users' grubunda olması gerekir. Kendinizi 'docker-users' grubuna ekleyin ve ardından Windows oturumunuzu kapatın.

Docker kapsayıcılarıyla çalışma izinlerine sahip olmak için 'docker-users' grubunun üyesi olmanız gerekir. Windows 10 veya sonraki sürümlerde kendinizi gruba eklemek için şu adımları izleyin:

  1. Başlat menüsünden Bilgisayar Yönetimi'ni açın.
  2. Yerel Kullanıcılar ve Gruplar'ı genişletin ve Gruplar'ı seçin.
  3. Docker-users grubunu bulun, sağ tıklayın ve Gruba ekle'yi seçin.
  4. Kullanıcı hesabınızı veya hesaplarınızı ekleyin.
  5. Bu değişikliklerin geçerli olması için oturumu kapatın ve yeniden oturum açın.

Kullanıcıları belirli gruplara net localgroup eklemek için Yönetici komut istemindeki komutu da kullanabilirsiniz.

net localgroup docker-users DOMAIN\username /add

PowerShell'de Add-LocalGroupMember işlevini kullanın.

Yetersiz disk alanı

Varsayılan olarak, Docker görüntüleri genellikle C:\ProgramData\Docker\ sistem sürücüsünde bulunan %ProgramData%/Docker/ klasöründe depolar. Görüntülerin sistem sürücüsünde değerli yer kaplamasını önlemek için görüntü klasörünün konumunu değiştirebilirsiniz. Bunu yapmak için:

  1. Görev çubuğunda Docker simgesine sağ tıklayın ve Ayarlar'ı seçin.

  2. Docker Altyapısı'nı seçin.

  3. Düzenleme bölmesinde, Docker görüntüleri için istediğiniz konumun değerini içeren özellik ayarını ekleyin graph :

       "graph": "D:\\mypath\\images"
    

    Docker Dosya Paylaşımı'nın ekran görüntüsü.

  4. Uygula & Yeniden Başlat'ı seçin. Bu adımlar %ProgramData%\docker\config\daemon.json konumundaki yapılandırma dosyasını değiştirir. Önceden oluşturulmuş görüntüler taşınmaz.

Kapsayıcı türü uyuşmazlığı

Bir projeye Docker desteği eklerken bir Windows veya Linux kapsayıcısı seçersiniz. Docker Server konağı proje hedefiyle aynı kapsayıcı türünü çalıştıracak şekilde yapılandırılmamışsa şuna benzer bir hata görürsünüz:

Docker Konağı ve Proje Uyuşmazlığı'nın ekran görüntüsü.

Bu sorunu çözmek için Sistem Tepsisi'nde Windows için Docker simgesine sağ tıklayın ve Windows kapsayıcılarına geç... veya Linux kapsayıcılarına geç... seçeneğini belirleyin.

Diğer sorunlar

Karşılaştığınız diğer sorunlar için bkz. Microsoft/DockerTools sorunları.

Başvurular