Bagikan melalui


Menyesuaikan pemetaan volume kontainer

Agar debugging berfungsi di dalam kontainer, Visual Studio menggunakan pemetaan volume untuk memetakan folder debugger dan NuGet dari mesin host. Pemetaan volume dijelaskan dalam dokumentasi Docker di sini. Anda dapat melihat pemetaan volume untuk kontainer dengan menggunakan jendela Kontainer di Visual Studio.

Prasyarat

Pemasangan volume di gambar kontainer Visual Studio

Berikut adalah volume yang dipasang dalam kontainer Anda:

Jilid Deskripsi
Folder Aplikasi Berisi folder proyek tempat Dockerfile berada.
folder NuGet paket Berisi paket NuGet dan folder fallback yang dibaca dari file obj{project}.csproj.nuget.g.props dalam proyek.
debugger jarak jauh Berisi bit yang diperlukan untuk menjalankan debugger dalam kontainer tergantung pada jenis proyek. Lihat Kustomisasi citra kontainer untuk debugging.
folder Sumber Berisi konteks build yang diteruskan ke perintah Docker.

Berikut ini adalah volume yang dipasang di kontainer Anda. Apa yang Anda lihat di kontainer Anda mungkin berbeda tergantung pada versi minor Visual Studio 2022 yang Anda gunakan.

Jilid Deskripsi
folder Aplikasi Berisi folder proyek tempat Dockerfile berada.
folder paket NuGet Berisi paket NuGet dan folder fallback yang dibaca dari file obj{project}.csproj.nuget.g.props dalam proyek.
debugger jarak jauh Berisi bit yang diperlukan untuk menjalankan debugger dalam kontainer tergantung pada jenis proyek. Untuk informasi selengkapnya, lihat Mengubah gambar kontainer untuk debugging.
folder sumber Berisi konteks build yang diteruskan ke perintah Docker.
VSTools Berisi alat Visual Studio yang mendukung bekerja dengan kontainer, termasuk dukungan untuk debugger, jendela Kontainer, menangani token Azure, agen Hot Reload, dan Distroless Helper.

Untuk .NET 8, titik pemasangan tambahan di root dan untuk pengguna aplikasi yang berisi rahasia pengguna dan sertifikat HTTPS mungkin juga ada.

Nota

Visual Studio 17.10 Jika Anda menggunakan Docker Engine di Subsistem Windows untuk Linux (WSL) tanpa Docker Desktop, atur variabel lingkungan VSCT_WslDaemon=1 agar Visual Studio menggunakan jalur WSL saat membuat pemasangan volume. Paket NuGet Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.20.0-Preview 1 juga diperlukan.

Untuk aplikasi web inti ASP.NET, mungkin ada dua folder tambahan untuk sertifikat SSL dan rahasia pengguna, yang dijelaskan secara lebih rinci di Menggunakan SSL untuk aplikasi inti ASP.NET kontainer

Memasang volume wadah

Anda dapat memasang volume lain menggunakan argumen baris perintah docker run.

  1. Buka file proyek untuk proyek kontainer.

  2. Untuk menentukan argumen baris perintah baru, tambahkan properti MSBuild DockerfileRunArguments, dan berikan sintaks -v atau --mount. Misalnya, sintaks berikut membuat volume myvolume dan memasangnya dalam kontainer di folder /scratch.

    <PropertyGroup>
       <DockerfileRunArguments>-v myvolume:/scratch</DockerfileRunArguments>
    </PropertyGroup>
    

    Lihat dokumentasi Docker untuk sintaks baris perintah untuk opsi -v atau --mount.