从 ASP.NET Core app 运行 in Docker for Windows 连接到 SQL Server Developer

Connect to SQL Server Developer from ASP.NET Core app running in Docker for Windows

我正在尝试从使用 Visual Studio Tools 创建的 docker 图像连接到本地 Windows 10 Pro 机器上的 SQL Server Developer 版本Docker Windows 的桌面。我已按照教程 here 进行操作。这帮助我确保 SQL 服务器正常运行并向外界公开。

我的偏好是以某种方式从 docker 开始 NET=HOST 并仅使用 . 访问我的数据库。但是,我不确定该怎么做,我不确定这是否适用于 Windows。

现在我似乎无法正确连接到 SQL。我试过这些:

Server={MyIPv4Address}:434;Database=MyDB;
    MultipleActiveResultSets=true;User 
    Id=DeveloperLocalHost;Password=MyAwesomePassword

Server={MyIPv4Address};Database=MyDB;
    MultipleActiveResultSets=true;User 
    Id=DeveloperLocalHost;Password=MyAwesomePassword

Server=.;Database=MyDB;
    MultipleActiveResultSets=true;User 
    Id=DeveloperLocalHost;Password=MyAwesomePassword

我已经尝试了很多其他的教程,这些教程是我在网上看过的,但没有记住所有的教程。我有点困惑。

我希望第二种方法(实际主机 IP 和默认 1433 端口)能够工作,只要您的 SQL 实例配置为允许远程连接。 运行 来自容器的此 PS 命令用于验证端口连接:

echo ((new-object Net.Sockets.TcpClient).Client.Connect("MyIPv4Address", "1433")) "connection successful"

验证连接后,您应该能够使用环境变量启动容器并将其用于您的连接。