无法通过SQL Management Studio从Docker容器连接到MS SQL数据库

3

我尝试运行一个微软/mssql-server-windows-express容器 ->

docker run -d -p 1433:1433 -e sa_password=password -e ACCEPT_EULA=Y microsoft/mssql-server-windows-express

我遇到了如下错误 ->

docker:守护进程的错误响应:无法在nat网络上创建终端节点hopeful_kowalevski:HNS失败,错误为:由于正在被另一个进程使用,因此无法访问文件。

我认为这是因为我的环境中的 SQL Server 监听了 1433 端口。然后我尝试使用其他端口(例如 5000:1433)运行容器,容器顺利运行。

然后我尝试使用“ip地址”,5000从容器中的 SQL Management Studio 连接到数据库。但是我收到了 Microsoft SQL Server,Error:258 的错误信息。

enter image description here


你确定没有防火墙阻止你使用端口1433(或5000)吗? - GuidoG
是的,没有防火墙阻止。我还为5000端口添加了一个新的防火墙规则。但是它没有帮助。 - agawa17
你必须在两端添加该规则。只是确认一下。 - GuidoG
关于“两端”,您是什么意思?我应该在主机上添加规则和容器中的规则吗? - agawa17
运行此 Docker 的机器上的防火墙必须允许该端口,同时您尝试连接数据库的机器上的防火墙也必须允许该端口。 - GuidoG
显示剩余2条评论
1个回答

4
据我所知,问题出在数据库密码输入错误。该密码与数据库规则不匹配。正确的密码应至少包含8个字符,并且来自以下四组中的三组:大写字母、小写字母、十进制数字和符号。详情请参见此链接

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接