从容器化 Asp.net 核心应用程序连接本地 SQL 服务器数据库
Connect local SQL Server database from the containerized Asp.net Core Application
我有一个非常简单的“hello world”类 Asp.net 核心 API 应用程序(包括 swagger),我在其中单击一个 API 控制器,它从数据库中获取数据,然后returns 为 JSON。我已经通过调试器测试了它在我的系统上的工作情况,进入 docker.
一切都很好
我已经创建了一个 docker 文件(不是 docker 组合)并最终构建图像 运行 docker 容器并检查应用程序确实可以访问。但是,从数据库中获取数据的 API 控制器,该端点失败。
我已经尝试了所有可能的选项,例如
- https://medium.com/@vedkoditkar/connect-to-local-ms-sql-server-from-docker-container-9d2b3d33e5e9
- How do I connect the local SQL Server database for the ASP.NET Core application running inside either local Docker or Kubernetes?
我有最新的 docker 版本(20.10.2,内部版本 2291f61),它支持 host.docker.internal,但它也不起作用。
我在禁用防火墙后尝试过,使用了端口为 1433 的 IP 地址,使用了 host.docker.internal 并且到处都出现了连接数据库的相同错误。
好吧,我尝试使用相同的 IP 地址并通过 SQL Management Studio 进行本地连接,并确认我在输入用户名、密码或 SQL 服务器和数据库方面有任何错误。
我有一个 asp.net 核心 API 应用程序,其中连接字符串存储在 appsettings.json 下。
None 的建议方法有效。有什么不同的选择/线索吗?
尝试运行容器在主机网络
docker run --network host myimagename myappcontainer
这样 myappcontainer 就可以访问您计算机上的 mssql 运行ning。
我有一个非常简单的“hello world”类 Asp.net 核心 API 应用程序(包括 swagger),我在其中单击一个 API 控制器,它从数据库中获取数据,然后returns 为 JSON。我已经通过调试器测试了它在我的系统上的工作情况,进入 docker.
一切都很好我已经创建了一个 docker 文件(不是 docker 组合)并最终构建图像 运行 docker 容器并检查应用程序确实可以访问。但是,从数据库中获取数据的 API 控制器,该端点失败。 我已经尝试了所有可能的选项,例如
- https://medium.com/@vedkoditkar/connect-to-local-ms-sql-server-from-docker-container-9d2b3d33e5e9
- How do I connect the local SQL Server database for the ASP.NET Core application running inside either local Docker or Kubernetes?
我有最新的 docker 版本(20.10.2,内部版本 2291f61),它支持 host.docker.internal,但它也不起作用。
我在禁用防火墙后尝试过,使用了端口为 1433 的 IP 地址,使用了 host.docker.internal 并且到处都出现了连接数据库的相同错误。 好吧,我尝试使用相同的 IP 地址并通过 SQL Management Studio 进行本地连接,并确认我在输入用户名、密码或 SQL 服务器和数据库方面有任何错误。
我有一个 asp.net 核心 API 应用程序,其中连接字符串存储在 appsettings.json 下。
尝试运行容器在主机网络
docker run --network host myimagename myappcontainer
这样 myappcontainer 就可以访问您计算机上的 mssql 运行ning。