我们如何允许 Docker 上的 SQL Server TCP/IP 连接?

JoR*_*era 6 java sql-server tcp jdbc docker

我正在学习 Java EE,并尝试打开与在 Docker 映像上运行的 SQL Server 数据库的连接。我显然明白了

无法创建 PoolableConnectionFactory(与主机 localhost/DB_DEMO、端口 1433 的 TCP/IP 连接失败。

docker ps -a
Run Code Online (Sandbox Code Playgroud)

0.0.0.0:1433->1433/tcp在“端口”下找到了我的 SQL Server 映像。

我知道我们可以使用 SQL Server 配置管理器来允许 TCP/IP 连接,但我似乎无法找到如何在不安装完整 SQL Server 套件的情况下安装它。

那么,有没有办法在 Docker 容器中运行的 SQL Server 上启用 TCP/IP?或者我在整个“TCP/IP”中没有得到什么?

编辑[已解决]:我使用此网址收到此错误(Microsoft 文档说如果未指定端口,则默认使用 1433):

url="jdbc:sqlserver://localhost/DB_DEMO"
Run Code Online (Sandbox Code Playgroud)

它使用 {property=key} 格式工作:

url="jdbc:sqlserver://localhost;databaseName=DB_DEMO"
Run Code Online (Sandbox Code Playgroud)

在来回切换这两种格式时,我一次做了太多的调整,很糟糕,我认为问题不存在(尽管我从aa文档中获取了服务器/DBName格式)。学过的知识!

就像Mark Rotteveel回答的那样,无论如何,TCP/IP 在 Docker 镜像上肯定是默认启用的。