You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改NATS容器端口?解决客户端默认端口连接超时问题

问题分析与解决

你的问题出在两个关键环节:

1. 容器启动时未正确配置NATS监听端口

NATS服务默认在容器内部监听4222端口,你执行的docker run -d -p 4225:4225 nats -js仅做了主机4225到容器4225的端口映射,但容器内的NATS并未在4225端口启动——它还是默认运行在4222端口,这导致你的端口映射完全无效。

2. NATS客户端默认连接4222端口

nats sub命令如果不指定服务器地址,会自动尝试连接127.0.0.1:4222,这就是你看到超时错误的直接原因。


解决步骤

第一步:修正容器启动命令

有两种可选方式:

  • 方式一:映射主机4225到容器默认4222(推荐,无需修改服务默认配置)
    docker run -d -p 4225:4222 nats -js
    
  • 方式二:修改容器内NATS监听端口为4225
    给nats命令加上-p 4225参数指定服务监听端口,同时保持端口映射一致:
    docker run -d -p 4225:4225 nats -js -p 4225
    

第二步:指定客户端连接端口

执行订阅命令时,必须通过-s(或--server)参数指定NATS服务的地址和端口:

nats sub test -s nats://127.0.0.1:4225

这样就能正常连接到你的NATS容器了。

内容的提问来源于stack exchange,提问作者mohandes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 18:37:39