在aspire中绑定容器端口

问题描述 投票:0回答:1

我有一个自定义 SQL Server Docker 映像,我想将其添加到我的 Aspire 项目中。该映像公开端口 1433。如何将其绑定到 Aspire 分配的端点?一旦我开始工作,我计划以类似的方式添加其他与 SQL Server 无关的容器。

像这样配置它会运行容器,但不会绑定端点的端口:

builder.AddContainer("custom-sql-container", "my.sql.image")
       .WithEndpoint(1433, 1433);

惊喜更新

我正在查看 docker 桌面中的容器,它根本没有显示绑定端口:

container showing in docker desktop with no port

但是

docker ps
给了我这个辛辣的小金块: result of docker ps on the command line showing a bound port

所以它绑定了端口,只是不是我期望的那样。这是否意味着 aspire 尚未为该端口设置代理,或者我完全误解了应该如何配置它?

dotnet-aspire
1个回答
0
投票

默认情况下,SQL Server 仅侦听环回接口 [127.0.0.1] 或 [0.0.0.0] 上的连接。这意味着即使端口暴露于 Aspire 分配的端点,任何试图访问您的 SQL Server 实例的外部连接也将无法找到它。

分辨率: 您可以在用于连接到 SQL Server 实例的连接字符串中使用 127.0.0.1 作为主机名。

© www.soinside.com 2019 - 2024. All rights reserved.