Sdílet prostřednictvím


Přizpůsobte mapování objemu kontejnerů

Aby ladění fungovalo v kontejnerech, Visual Studio používá mapování svazků k mapování ladicího programu a složek NuGet z hostitelského počítače. Mapování svazků je popsáno v dokumentaci Dockeru zde. Mapování svazků pro kontejner můžete zobrazit pomocí okna Containers ve Visual Studio.

Požadavky

Připojení svazků v obrazech kontejneru Visual Studio

Tady jsou svazky, které jsou připojené v kontejneru:

Hlasitost/Objem Popis
Složka aplikace Obsahuje složku projektu, ve které se nachází soubor Dockerfile.
složky balíčků NuGet Obsahuje balíčky NuGet a záložní složky, které se čtou z obj{project}.csproj.nuget.g.props souboru v projektu.
vzdálený ladicí program Obsahuje bity potřebné ke spuštění ladicího programu v kontejneru v závislosti na typu projektu. Viz Přizpůsobení imagí kontejneru pro ladění.
zdrojová složka Obsahuje kontext sestavení, který se předává příkazům Dockeru.

Zde jsou svazky připojené ke kontejneru. To, co vidíte v kontejnerech, se může lišit v závislosti na podverzi sady Visual Studio 2022, kterou používáte.

Hlasitost / Objem Popis
složka aplikace Obsahuje složku projektu, ve které se nachází soubor Dockerfile.
složky balíčků NuGet Obsahuje balíčky NuGet a náhradní složky, které jsou čteny ze souboru obj{project}.csproj.nuget.g.props projektového souboru.
Vzdálený ladicí program Obsahuje bity potřebné ke spuštění ladicího programu v kontejneru v závislosti na typu projektu. Další informace naleznete v tématu Přizpůsobení imagí kontejneru pro ladění.
Zdrojová složka Obsahuje kontext sestavení, který se předává příkazům Dockeru.
VSTools Obsahuje nástroje sady Visual Studio, které podporují práci s kontejnerem, včetně podpory ladicího programu, okna kontejnerů, zpracování tokenů Azure, agenta Hot Reload a pomocníka Distroless.

Pro .NET 8 mohou být k dispozici další přípojné body v kořenovém adresáři a pro uživatele aplikace, které mohou obsahovat tajné kódy uživatele a certifikát HTTPS.

Poznámka

Visual Studio 17.10 Pokud používáte Docker Engine v subsystému Windows pro Linux (WSL) bez Docker Desktopu, nastavte proměnnou prostředí VSCT_WslDaemon=1, aby Visual Studio používalo cesty WSL při vytváření mountování svazků. Vyžaduje se také balíček NuGet Microsoft.VisualStudio.Azure.Containers.Tools.Targets 1.20.0-Preview 1.

U ASP.NET základních webových aplikací můžou existovat dvě další složky pro certifikát SSL a tajné kódy uživatelů, které jsou podrobněji vysvětlené v tématu Použití SSL pro kontejnerizované aplikace ASP.NET Core

Připojte svazek kontejneru

Pomocí argumentů příkazového řádku docker run můžete připojit jiný svazek.

  1. Otevřete soubor projektu pro kontejnerizovaný projekt.

  2. Chcete-li zadat nový argument příkazového řádku, přidejte vlastnost MSBuild DockerfileRunArgumentsa zadejte -v nebo --mount syntaxi. Například následující syntaxe vytvoří svazek myvolume a připojí ho do kontejneru ve složce /scratch.

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

    Informace o syntaxi příkazového řádku pro možnosti -v nebo --mount najdete v dokumentaci k Dockeru.