
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
已弃用:NATS Streaming Server已被弃用。关键错误修复和安全修复将持续到2023年6月。需要持久化功能的NATS应用应使用JetStream。
nats-streaming是NATS消息系统的高性能流服务器,提供云原生环境下的消息流处理能力,支持持久化消息存储和订阅机制。
流服务器本身与之前版本向后兼容,但v0.15.0+版本嵌入了NATS Server 2.0。如果使用嵌入式NATS服务器并尝试路由到v0.14.3及更早版本的服务器,会因NATS Server路由协议变更而失败。但可以将v0.15.0+连接到现有NATS集群,实现v0.15.0+与v0.14.3-流服务器的混合部署。
适用于需要可靠消息传递和流处理的云原生应用,如日志收集、事件驱动架构、微服务间通信等场景。注意:由于已弃用,新应用应优先考虑JetStream。
由于Windows Docker镜像构建限制,不带参数运行时将启动基于内存存储的NATS Streaming服务器,监听4222端口,监控端口8222。如需指定额外参数或修改选项,需显式指定可执行文件名:
bashdocker run -p 4223:4223 -p 8223:8223 nats-streaming nats-streaming-server -p 4223 -m 8223
如需指定入口点:
bashdocker run --entrypoint c:/nats-streaming-server/nats-streaming-server -p 4222:4222 -p 8222:8222 nats-streaming
向NATS Streaming服务器提供参数时,直接在命令行传递即可。例如,将监听端口和监控端口分别改为4223和8223:
bashdocker run -p 4223:4223 -p 8223:8223 nats-streaming -p 4223 -m 8223
如需指定入口点:
bashdocker run --entrypoint /nats-streaming-server -p 4222:4222 -p 8222:8222 nats-streaming
bash# 后台运行NATS Streaming服务器 # 暴露客户端端口4222和HTTP监控端口8222 docker run -d -p 4222:4222 -p 8222:8222 nats-streaming
带交互模式运行(非后台)的输出示例:
[1] 2022/10/11 14:57:50.404688 [INF] STREAM: Starting nats-streaming-server[test-cluster] version 0.25.2 [1] 2022/10/11 14:57:50.404739 [INF] STREAM: ServerID: fbZJjwGYLBpNM5I8z23NSN [1] 2022/10/11 14:57:50.404741 [INF] STREAM: Go version: go1.19.2 [1] 2022/10/11 14:57:50.404743 [INF] STREAM: Git commit: [9e599667] [1] 2022/10/11 14:57:50.406004 [INF] Starting nats-server [1] 2022/10/11 14:57:50.406009 [INF] Version: 2.9.3 [1] 2022/10/11 14:57:50.406011 [INF] Git: [25e82d7] [1] 2022/10/11 14:57:50.406013 [INF] Name: NDQOBTB34ECZWAKAJAREPEXQPXGKUEJEZINCHV2CIHGGJQCSCVPQPU5W [1] 2022/10/11 14:57:50.406015 [INF] ID: NDQOBTB34ECZWAKAJAREPEXQPXGKUEJEZINCHV2CIHGGJQCSCVPQPU5W [1] 2022/10/11 14:57:50.406423 [INF] Listening for client connections on 0.0.0.0:4222 [1] 2022/10/11 14:57:50.406679 [INF] Server is ready [1] 2022/10/11 14:57:50.434935 [INF] STREAM: Recovering the state... [1] 2022/10/11 14:57:50.434945 [INF] STREAM: No recovered state [1] 2022/10/11 14:57:50.435271 [INF] STREAM: Message store is MEMORY [1] 2022/10/11 14:57:50.435303 [INF] STREAM: ---------- Store Limits ---------- [1] 2022/10/11 14:57:50.435306 [INF] STREAM: Channels: 100 * [1] 2022/10/11 14:57:50.435308 [INF] STREAM: --------- Channels Limits -------- [1] 2022/10/11 14:57:50.435310 [INF] STREAM: Subscriptions: 1000 * [1] 2022/10/11 14:57:50.435311 [INF] STREAM: Messages : 1000000 * [1] 2022/10/11 14:57:50.435313 [INF] STREAM: Bytes : 976.56 MB * [1] 2022/10/11 14:57:50.435315 [INF] STREAM: Age : unlimited * [1] 2022/10/11 14:57:50.435316 [INF] STREAM: Inactivity : unlimited * [1] 2022/10/11 14:57:50.435318 [INF] STREAM: ---------------------------------- [1] 2022/10/11 14:57:50.435320 [INF] STREAM: Streaming Server is ready
bashdocker run -d -p 4222:4222 -p 8222:8222 nats-streaming -store file -dir datastore
bashdocker run -d --name=nats-main -p 4222:4222 -p 6222:6222 -p 8222:8222 nats
bashdocker run -d --link nats-main nats-streaming -store file -dir datastore -ns nats://nats-main:4222
| 参数 | 说明 | 默认值 |
|---|---|---|
-cid, --cluster_id <string> | 集群ID | test-cluster |
-st, --store <string> | 存储类型 | MEMORY (可选: MEMORY|FILE|SQL) |
--dir <string> | 文件存储根目录 | - |
-mc, --max_channels <int> | 最大通道数(0表示无限制) | 100 |
-msu, --max_subs <int> | 每通道最大订阅数 | 1000 |
-mm, --max_msgs <int> | 每通道最大消息数 | *** |
-mb, --max_bytes <size> | 每通道消息总大小 | 976.56 MB |
-ma, --max_age <duration> | 消息最大存储时长 | unlimited |
-mi, --max_inactivity <duration> | 通道最大不活动时间 | unlimited |
-ns, --nats_server <string> | 外部NATS服务器URL | 嵌入式NATS服务器 |
-sc, --stan_config <string> | 流服务器配置文件路径 | - |
| 参数 | 说明 |
|---|---|
--clustered <bool> | 启用集群模式 |
--cluster_node_id <string> | 集群节点ID |
--cluster_bootstrap <bool> | 引导集群(自选举为领导者) |
--cluster_peers <string, ...> | 集群节点ID列表 |
--cluster_log_path <string> | 日志复制数据存储目录 |
| 参数 | 说明 |
|---|---|
--file_compact_enabled <bool> | 启用文件压缩 |
--file_compact_frag <int> | 文件碎片压缩阈值 |
--file_sync <bool> | 启用File.Sync刷新 |
--file_slice_max_msgs <int> | 每文件切片最大消息数 |
| 参数 | 说明 | 默认值 |
|---|---|---|
-a, --addr <string> | 绑定地址 | 0.0.0.0 |
-p, --port <int> | 客户端端口 | 4222 |
-m, --http_port <int> | HTTP监控端口 | - |
-c, --config <string> | NATS配置文件 | - |
完整命令行选项可通过运行 docker run nats-streaming --help 查看。
查看https://github.com/nats-io/nats-streaming-server/blob/master/LICENSE%E3%80%82%E6%AD%A4%E9%95%9C%E5%83%8F%E5%8F%AF%E8%83%BD%E5%8C%85%E5%90%AB%E5%85%B6%E4%BB%96%E8%BD%AF%E4%BB%B6%EF%BC%8C%E5%85%B6%E8%AE%B8%E5%8F%AF%E8%AF%81%E4%BF%A1%E6%81%AF%E5%8F%AF%E5%9C%A8https://github.com/docker-library/repo-info/tree/master/repos/nats-streaming%E4%B8%AD%E6%89%BE%E5%88%B0%E3%80%82%E4%BD%BF%E7%94%A8%E6%AD%A4%E9%95%9C%E5%83%8F%E9%9C%80%E7%A1%AE%E4%BF%9D%E7%AC%A6%E5%90%88%E6%89%80%E6%9C%89%E5%8C%85%E5%90%AB%E8%BD%AF%E4%BB%B6%E7%9A%84%E8%AE%B8%E5%8F%AF%E8%A6%81%E6%B1%82%E3%80%82
有关NATS Streaming服务器的详细配置说明,请参考官方文档。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务