sql-server - 使用host.docker.internal从docker连接到本地计算机(host)中的SQL Server

标签 sql-server docker docker-networking docker-for-windows

我正在尝试使用host.docker.internal(按照https://docs.docker.com/docker-for-windows/networking/#use-cases-and-workarounds的建议)连接到在本地计算机上运行的SQL Server实例。
host.docker.internal已成功解析为IP,并且可以ping通

并且在防火墙配置中打开了端口 1433

错误消息

Connection refused 192.168.65.2:1433



我的连接字符串

Data Source=host.docker.internal,1433;Initial Catalog=;Persist Security Info=False;User ID=;Password=;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;



docker 版本
Client:
 Version:      18.03.1-ce
 API version:  1.37
 Go version:   go1.9.5
 Git commit:   9ee9f40
 Built:        Thu Apr 26 07:12:48 2018
 OS/Arch:      windows/amd64
 Experimental: false
 Orchestrator: swarm

Server:
 Engine:
  Version:      18.03.1-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.5
  Git commit:   9ee9f40
  Built:        Thu Apr 26 07:22:38 2018
  OS/Arch:      linux/amd64
  Experimental: true

Windows版Docker的

Docker for windows

最佳答案

如果有人遇到类似的问题,这就是我的解决方法

  • 打开SQL Server配置管理器
  • 在服务器网络配置中启用TCP/IP
  • 重新启动SQL服务服务

  • TCP/IP

    如果仍然无法正常工作,还需要检查一些其他内容
  • 防火墙(开放端口1433)
  • 启用到SQL服务器的远程连接

  • enter image description here

    关于sql-server - 使用host.docker.internal从docker连接到本地计算机(host)中的SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50166869/

    相关文章:

    sql-server - 好像我的存储过程返回整数

    sql-server - MSSQL 架构和 Hibernate 5.1.0.Final(未找到表)

    azure - docker - Azure 容器实例 - 如何使我的容器可从外部访问和识别?

    c# - 从 SQL 读取数百万条记录,处理它们并将它们插入到另一个 SQL 服务器

    sql - 将格式为 yyyymmddhhnn 的字符串转换为日期时间

    node.js - express.js api 应用程序中的内存泄漏

    docker - 在K8S中部署一个NFS Server并对外暴露

    linux - Bash脚本SSH命令变量插值

    docker - 如何从连接到外部网络的另一个组合访问容器?

    docker - Docker 'host' 和 'none' 网络有什么用?