在 Visual Studio 中启动时如何将 Docker 容器连接到 Docker 网络

Lor*_*ake 7 visual-studio docker visual-studio-2019

我创建了一个 ASP.NET CORE api 并向项目添加了 Docker 支持 ( sftt.app)。我在另一个容器 ( ) 中还有一个 MongoDB 实例sftt.db。为了轻松地将应用程序连接到数据库,我在连接字符串中使用数据库容器的名称。这要求两个容器都连接到 Docker 网络,我将其命名为sftt-net. 当我启动容器时,sftt.app我想自动连接到sftt-net它,docker run就像我对数据库所做的那样,但是我找不到在 Visual Studio 中执行此操作的选项。

"commandLineArgs": "--network sftt-net"我尝试在文件中添加命令行参数launchSettings.json,但这不起作用。(我也尝试过connect sftt-net sftt.app

从 Visual Studio 启动时,如何在启动时将 api 容器添加到网络?

Ste*_*eve 11

您可以通过编辑 csproj 文件并添加以下内容来指定其他 Docker 参数:

<DockerfileRunArguments>arguments go here</DockerfileRunArguments>
Run Code Online (Sandbox Code Playgroud)

编辑 csproj 文件以将 Docker 容器连接到名为 的网络的示例mongo_cluster如下所示

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
    <DockerfileRunArguments>--network mongo_cluster</DockerfileRunArguments>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.10.9" />
    <PackageReference Include="MongoDB.Driver" Version="2.11.4" />
  </ItemGroup>

</Project>

Run Code Online (Sandbox Code Playgroud)