Sdílet prostřednictvím


Přizpůsobení mapování svazků kontejneru

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 popsané v dokumentaci k Dockeru. Mapování svazků pro kontejner můžete zobrazit pomocí okna Kontejnery v sadě Visual Studio.

Požadavky

Připojení svazků v imagích kontejneru sady Visual Studio

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

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 souboru obj{project}.csproj.nuget.g.props 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.

Tady jsou svazky, které jsou připojené v 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.

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 souboru obj{project}.csproj.nuget.g.props 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. 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 Kontejnery, zpracování tokenů Azure, agenta Opětovné načítání za provozu a pomocné rutiny pro distribuci.

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

Poznámka:

Visual Studio 17.10 Pokud používáte Modul Dockeru v Subsystém Windows pro Linux (WSL) bez Docker Desktopu, nastavte proměnnou VSCT_WslDaemon=1 prostředí tak, aby visual Studio při vytváření připojení svazků používalo cesty WSL. 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řipojení svazku kontejneru

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

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

  2. Chcete-li zadat nový argument příkazového řádku, přidejte vlastnost DockerfileRunArgumentsMSBuild a 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 najdete v dokumentaci k Dockeru pro možnosti -v nebo --mount .