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

时间:2018-05-04 03:49:36

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

我正在尝试使用host.docker.internal连接到在我的本地计算机上运行的SQL Server实例(根据https://docs.docker.com/docker-for-windows/networking/#use-cases-and-workarounds中的建议)

host.docker.internal已成功解析为IP,并且可以ping通

我在防火墙配置

中打开了端口 1433

错误消息

  

连接被拒绝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;

泊坞广告版

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

1 个答案:

答案 0 :(得分:1)

如果有人遇到类似问题,请按照以下方式解决问题

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

TCP/IP

如果它仍然不起作用,还有一些事情需要检查

  1. 防火墙(开放端口1433)
  2. 启用与sql server的远程连接
  3. enter image description here