Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kapsayıcı Araçları ayarlarını kullanarak Visual Studio'nun Docker kapsayıcılarıyla nasıl çalıştığının bazı yönlerini denetleyebilirsiniz. Bu makalede, Docker kapsayıcılarıyla çalışırken Visual Studio performansını ve kaynak kullanımını etkileyebilecek Kapsayıcı Araçları ayarlarının nasıl yapılandırılacağı açıklanır.
Önkoşullar
- Docker Desktop veya Podman Desktop.
- Visual Studio veya Podman desteği için Visual Studio 2026, ASP.NET ve web geliştirme, Azure geliştirme iş yükü ve/veya .NET masaüstü geliştirme iş yükü yüklü.
Önkoşullar
- Docker Desktop.
- ASP.NET ve web geliştirme, Azure geliştirme iş yükü ve/veya .NET masaüstü geliştirme iş yükü yüklü Visual Studio.
Kapsayıcı Araçları ayarları
Ayarlara erişmek için ana Visual Studio menüsünden Araçlar > Seçenekleri'ni seçin. Sol bölmede aşağı kaydırın ve Kapsayıcı Araçları'nı genişletin.
Genel ayarlar
Aşağıdaki tabloda Genel ayarlar açıklanmaktadır:
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Gerekirse Docker Desktop'ı yükleyin | Bana sor | Docker Desktop'ın yüklü olup olmadığının sorulmasını isteyip istemediğinizi seçin. |
| Gerekirse Docker Desktop'ı başlatın | Bana sor | Docker Desktop başlatılmadıysa, otomatik olarak başlatılıp başlatılmayacağını veya size sorulup sorulmayacağını seçin. |
| ASP.NET Core SSL sertifikasına güvenin | Bana sor | Bir ASP.NET Core projesinde SSL sertifikasına localhost güvenilip güvenilmediğinin sorulup sorulmayacağını seçin. |
Aşağıdaki tabloda Genel ayarlar açıklanmaktadır:
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Yükleme yapılmadığında kapsayıcı çalışma zamanını yükleme istemi | Etkinleştirildi | Docker Desktop veya Podman yüklü değilse sorulmasını isteyip istemediğinizi seçin. |
| ASP.NET Çekirdek SSL sertifikasına güvenme istemi | Bir ASP.NET Core projesinde SSL sertifikasına localhost güvenilip güvenilmediğinin sorulup sorulmayacağını seçin. |
|
| Gerekirse kapsayıcı çalışma zamanını başlat | Bana sor | Docker Desktop veya Podman başlatılmadıysa, otomatik olarak başlatılıp başlatılmayacağını veya sizden istenip istenmeyeceğini seçin. |
| Kapsayıcı yürütme ortamı | Auto | Kapsayıcı çalışma zamanını seçin; Docker ve Podman desteklenir. Visual Studio'nun hangi çalışma zamanını kullandığınızı algılamasını isteyip istemediğinizi seçinAuto . |
Önemli
Çekirdek SSL sertifikasına ASP.NET Güven'iHiçbir zaman olarak ayarlarsanız ve SSL sertifikasına localhost güvenilmiyorsa, HTTPS web istekleri çalışma zamanında başarısız olabilir. Bu durumda, Güven ASP.NET Çekirdek SSL sertifikasınıBana sor olarak ayarlayın, projenizi çalıştırın ve istemde güveni belirtin.
Tek Proje veya Docker Oluşturma ayarları
Container Tools Single Project ve Docker Compose ayarları aynıdır.
Aşağıdaki tabloda Tek Proje ve Docker Compose ayarları açıklanmaktadır:
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Proje açıkken gerekli Docker görüntülerini çekin | Doğru | Bir kapsayıcı projesi yüklerken bir arka plan Docker çekme işleminin başlatılıp başlatılmayacağı. Kodunuzu çalıştırmaya hazır olduğunuzda gerekli görüntüler indirilir veya indirilir. Yalnızca koda göz atmak istiyorsanız, ihtiyacınız olmayan kapsayıcı görüntülerini indirmekten kaçınmak için False olarak ayarlayabilirsiniz. |
| Proje açılışında güncelleştirilmiş Docker görüntülerini çekin | .NET Core projeleri | En son güncelleştirmeleri almak için projedeki tüm görüntüler için bir Docker çekme işleminin çalıştırılıp çalıştırılmayacağı veya hangi projelerde çalıştırılacağı. |
| Proje açılışında kapsayıcıları çalıştırma | Doğru | Bir kapsayıcı projesi yüklerken bir kapsayıcı oluşturulup oluşturulmayacağı, böylece derleyip çalıştırdığınızda hazır olur. Kapsayıcınızın ne zaman oluşturulduğunu denetlemeyi tercih ediyorsanız False olarak ayarlayın. |
| Proje kapanışındaki kapsayıcıları kaldırın | Doğru | Çözümü kapattıktan veya Visual Studio'yu kapattıktan sonra çözümünüz için kapsayıcıları kaldırıp kaldırmayacağınız. |
| Azure Kimlik Doğrulaması'nı etkinleştirmek için kapsayıcılarda bir hizmet çalıştırın | Doğru | Visual Studio sürüm 17.6 veya üzeri için, Azure Kimlik Doğrulaması'nı etkinleştirmek için kapsayıcıya bir belirteç proxy hizmeti yükleyip çalıştırmayacağınız. Bu hizmet, uygulamalarınızın geliştirme sırasında Azure hizmetlerini kullanmasına olanak tanır. Daha fazla bilgi için Azure kimlik doğrulamasını yapılandırma bölümüne bakın. |
| Çalışırken Yeniden Yükleme'yi etkinleştirmek için kapsayıcılarda bir hizmet çalıştırın | Doğru | Visual Studio sürüm 17.7 ve üzeri için, Çalışırken Yeniden Yükleme hizmetinin yüklenip çalıştırılmayacağı. Bu hizmet yalnızca hata ayıklama olmadan çalıştırmayı destekler, Ctrl+F5. |
Container Warmup bölümündeki aşağıdaki ayarlar, Visual Studio'nun hizmetleri başlatarak ve görüntüleri beklenen kullanımdan önce hazırlayarak performansı nasıl iyileştirdiği denetlenir.
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Proje açıkken gerekli görüntüleri çekme | Etkinleştirildi | Bir kapsayıcı projesi yüklerken bir arka plan Docker çekme işleminin başlatılıp başlatılmayacağı. Kodunuzu çalıştırmaya hazır olduğunuzda gerekli görüntüler indirilir veya indirilir. Yalnızca koda göz atmak istiyorsanız, ihtiyacınız olmayan kapsayıcı görüntülerini indirmekten kaçınmak için False olarak ayarlayabilirsiniz. |
| Proje açılışında kapsayıcıları çalıştırma | Doğru | Bir kapsayıcı projesi yüklerken bir kapsayıcı oluşturulup oluşturulmayacağı, böylece derleyip çalıştırdığınızda hazır olur. Kapsayıcınızın ne zaman oluşturulduğunu denetlemeyi tercih ediyorsanız False olarak ayarlayın. |
| Proje kapanışındaki kapsayıcıları kaldırın | Doğru | Çözümü kapattıktan veya Visual Studio'yu kapattıktan sonra çözümünüz için kapsayıcıları kaldırıp kaldırmayacağınız. |
Hata Ayıklama bölümünde aşağıdaki ayarlar görüntülenir:
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Azure Kimlik Doğrulaması'nı etkinleştirmek için kapsayıcılarda bir hizmet çalıştırın | Etkinleştirildi | Azure Kimlik Doğrulaması'nı etkinleştirmek için kapsayıcıda bir belirteç ara sunucusu hizmetinin yüklenip çalıştırılması gerekip gerekmediği. Bu hizmet, uygulamalarınızın geliştirme sırasında Azure hizmetlerini kullanmasına olanak tanır. Daha fazla bilgi için Azure kimlik doğrulamasını yapılandırma bölümüne bakın. |
| Çalışırken Yeniden Yükleme'yi etkinleştirmek için kapsayıcılarda bir hizmet çalıştırın | Etkinleştirildi | Hot Reload hizmetinin yüklenip çalıştırılmayacağı. Bu hizmet yalnızca hata ayıklama olmadan çalıştırmayı destekler, Ctrl+F5. |
Kapsayıcılar Pencere ayarları
Kapsayıcılar Penceresi ayarları, Docker kapsayıcıları ve görüntüleri hakkında bilgi gösteren Visual Studio IDE'deki Kapsayıcılar penceresi için geçerlidir. Daha fazla bilgi için bkz. Kapsayıcılar penceresini kullanma.
Aşağıdaki tabloda Kapsayıcılar Penceresi ayarları açıklanmaktadır:
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Kapları budamadan önce onaylayın | Her zaman | Kullanılmayan kapları budarken size sorulup sorulmayacağı. |
| Görüntüleri budamadan önce onaylayın | Her zaman | Kullanılmayan görüntüleri budarken size sorulup sorulmayacağı. |
| Bir kabı çıkarmadan önce onaylayın | Her zaman | Bir kabı çıkarırken size sorulup sorulmayacağı. |
| Bir görüntüyü kaldırmadan önce onaylayın | Her zaman | Bir görüntüyü kaldırırken size sorulup sorulmayacağı. |
| Çok sayıda görüntüyü çalıştırmadan önce onaylayın | Her zaman | Aynı anda 10'dan fazla görüntüden kapsayıcıları başlatmadan önce size sorulup sorulmayacağı. |
| Kapsayıcılar penceresinde kullanılacak dize biçimini görüntüleme | Boş | {ContainerName}, {ImageName}, {ProjectName} ve {ContainerID} belirteçleri desteğiyle Kapsayıcılar penceresinde kullanılacak bir görüntü dizesi biçimi. |
| Kapsayıcıları Docker Compose projesine göre gruplandırma | Her zaman | Kapsayıcıların parçası oldukları Docker Compose projesine göre gruplandırılıp gruplandırılmayacağı. |
Azure kimlik doğrulamasını yapılandırma
Uygulamanız Azure hizmetlerini kullanıyorsa, bir kapsayıcıda çalışırken Azure hizmetleriyle kimlik doğrulaması yapmak için uygun kimlik bilgilerine ihtiyaç duyar. Geliştirme sırasında genellikle kendi Azure kimlik bilgilerinizi kullanabilirsiniz, ancak kapsayıcı ortamında çalıştırmak için kapsayıcılı uygulamanın üretimde kullandığı kimlik bilgileri gerekir.
Visual Studio 2022 sürüm 17.6 ve üzeri, uygulamalarınızın ve hizmetlerinizin Azure'da kimlik doğrulamasına yardımcı olmak için tek kapsayıcılı ve Docker Compose projelerinizde bir belirteç proxy hizmeti dağıtır ve çalıştırır. Bu özellik için Azure Identity 1.9.0 veya üzeri gerekir.
Bu hizmet etkinleştirildiğinde, herhangi bir ek yapılandırma veya kurulum olmadan kapsayıcı içindeki çoğu Azure hizmetini otomatik olarak kullanabilirsiniz. Kodunuz, Azure hizmetleriyle bir kapsayıcının dışındakiyle aynı şekilde kimlik DefaultAzureCredential doğrulaması yapabilir ve VisualStudioCredential kullanabilir. Daha fazla bilgi için Azure Identity 1.9.0 README'ye bakın.
Bu özelliği devre dışı bırakmak için Kapsayıcı AraçlarıTek Proje veya Docker Compose ayarlarındaAzure Kimlik Doğrulaması'nı etkinleştirmek için Kapsayıcılarda bir hizmet çalıştır'ıFalse olarak ayarlayın.
Dikkat
Belirteç proxy'sinin kullanılması ve belirli tanılama günlüklerinin etkinleştirilmesi olası bir güvenlik sorunu oluşturur. Bu günlükler, kimlik doğrulama kimlik bilgilerini düz metin olarak kullanıma sunabilir. Aşağıdaki ortam değişkenleri bu günlükleri etkinleştirir:
- Tek kapsayıcı projeleri için,
MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLEDoturum açan%tmp%\Microsoft.VisualStudio.Containers.Tools. - Docker Compose projeleri için,
MS_VS_DOCKER_TOOLS_LOGGING_ENABLED, oturum açan%tmp%\Microsoft.VisualStudio.DockerCompose.Tools.
Kapsayıcılar Pencere ayarları
Kapsayıcılar Penceresi ayarları, Docker kapsayıcıları ve görüntüleri hakkında bilgi gösteren Visual Studio IDE'deki Kapsayıcılar penceresi için geçerlidir. Daha fazla bilgi için bkz. Kapsayıcılar penceresini kullanma.
Aşağıdaki tabloda Kapsayıcılar Penceresi ayarları açıklanmaktadır:
| Ayarlar | Varsayılan değer | Açıklama |
|---|---|---|
| Kapları budamadan önce onaylayın | Etkinleştirildi | Kullanılmayan kapları budarken size sorulup sorulmayacağı. |
| Görüntüleri budamadan önce onaylayın | Etkinleştirildi | Kullanılmayan görüntüleri budarken size sorulup sorulmayacağı. |
| Bir kabı çıkarmadan önce onaylayın | Etkinleştirildi | Bir kabı çıkarırken size sorulup sorulmayacağı. |
| Bir görüntüyü kaldırmadan önce onaylayın | Etkinleştirildi | Bir görüntüyü kaldırırken size sorulup sorulmayacağı. |
| Çok sayıda görüntüyü çalıştırmadan önce onaylayın | Etkinleştirildi | Aynı anda 10'dan fazla görüntüden kapsayıcıları başlatmadan önce size sorulup sorulmayacağı. |
| Kapsayıcılar penceresinde kullanılacak dize biçimini görüntüleme | Boş | {ContainerName}, {ImageName}, {ProjectName} ve {ContainerID} belirteçleri desteğiyle Kapsayıcılar penceresinde kullanılacak bir görüntü dizesi biçimi. |
| Kapsayıcıları Docker Compose projesine göre gruplandırma | Etkinleştirildi | Kapsayıcıların parçası oldukları Docker Compose projesine göre gruplandırılıp gruplandırılmayacağı. |
Azure kimlik doğrulamasını yapılandırma
Uygulamanız Azure hizmetlerini kullanıyorsa, bir kapsayıcıda çalışırken Azure hizmetleriyle kimlik doğrulaması yapmak için uygun kimlik bilgilerine ihtiyaç duyar. Geliştirme sırasında genellikle kendi Azure kimlik bilgilerinizi kullanabilirsiniz, ancak kapsayıcı ortamında çalıştırmak için kapsayıcılı uygulamanın üretimde kullandığı kimlik bilgileri gerekir.
Visual Studio, uygulama ve hizmetlerinizin Azure'da kimlik doğrulaması yapmalarına yardımcı olmak için tek kapsayıcılı ve Docker Compose projelerinizde bir belirteç ara sunucusu hizmeti dağıtır ve çalıştırır. Bu özellik için Azure Identity 1.9.0 veya üzeri gerekir.
Bu hizmet etkinleştirildiğinde, herhangi bir ek yapılandırma veya kurulum olmadan kapsayıcı içindeki çoğu Azure hizmetini otomatik olarak kullanabilirsiniz. Kodunuz, Azure hizmetleriyle bir kapsayıcının dışındakiyle aynı şekilde kimlik DefaultAzureCredential doğrulaması yapabilir ve VisualStudioCredential kullanabilir. Daha fazla bilgi için Azure Identity 1.9.0 README'ye bakın.
Bu özelliği devre dışı bırakmak için Kapsayıcı AraçlarıTek Proje veya Docker Compose ayarlarındaAzure Kimlik Doğrulaması'nı etkinleştirmek için Kapsayıcılarda bir hizmet çalıştır'ıFalse olarak ayarlayın.
Dikkat
Belirteç proxy'sinin kullanılması ve belirli tanılama günlüklerinin etkinleştirilmesi olası bir güvenlik sorunu oluşturur. Bu günlükler, kimlik doğrulama kimlik bilgilerini düz metin olarak kullanıma sunabilir. Aşağıdaki ortam değişkenleri bu günlükleri etkinleştirir:
- Tek kapsayıcı projeleri için,
MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLEDoturum açan%tmp%\Microsoft.VisualStudio.Containers.Tools. - Docker Compose projeleri için,
MS_VS_DOCKER_TOOLS_LOGGING_ENABLED, oturum açan%tmp%\Microsoft.VisualStudio.DockerCompose.Tools.