
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
arm32v6/nats是NATS消息系统服务器的Docker镜像,专为arm32v6架构构建。NATS是一个开源、高性能的云原生消息系统,旨在提供低延迟、高吞吐量的异步通信能力,适用于分布式系统和微服务架构。
注意:本镜像为nats官方镜像的"按架构"仓库,仅包含arm32v6架构构建。更多架构信息参见https://github.com/docker-library/official-images#architectures-other-than-amd64%E3%80%82
| 标签 | 对应的Dockerfile |
|---|---|
2.12.1-alpine3.22, 2.12-alpine3.22, 2-alpine3.22, alpine3.22, 2.12.1-alpine, 2.12-alpine, 2-alpine, alpine | https://github.com/nats-io/nats-docker/blob/5b46acd148b1b7d13a084cca7fc1a50e75412360/2.12.x/alpine3.22/Dockerfile |
2.12.1-scratch, 2.12-scratch, 2-scratch, scratch, 2.12.1-linux, 2.12-linux, 2-linux, linux | https://github.com/nats-io/nats-docker/blob/5b46acd148b1b7d13a084cca7fc1a50e75412360/2.12.x/scratch/Dockerfile |
2.11.10-alpine3.22, 2.11-alpine3.22, 2.11.10-alpine, 2.11-alpine | https://github.com/nats-io/nats-docker/blob/5b46acd148b1b7d13a084cca7fc1a50e75412360/2.11.x/alpine3.22/Dockerfile |
2.11.10-scratch, 2.11-scratch, 2.11.10-linux, 2.11-linux | https://github.com/nats-io/nats-docker/blob/5b46acd148b1b7d13a084cca7fc1a50e75412360/2.11.x/scratch/Dockerfile |
2.10.29-alpine3.22, 2.10-alpine3.22, 2.10.29-alpine, 2.10-alpine | https://github.com/nats-io/nats-docker/blob/5b46acd148b1b7d13a084cca7fc1a50e75412360/2.10.x/alpine3.22/Dockerfile |
2.10.29-scratch, 2.10-scratch, 2.10.29-linux, 2.10-linux | https://github.com/nats-io/nats-docker/blob/5b46acd148b1b7d13a084cca7fc1a50e75412360/2.10.x/scratch/Dockerfile |
| 标签 | 对应的基础镜像 |
|---|---|
2.12.1, 2.12, 2, latest | 2.12.1-scratch |
2.11.10, 2.11 | 2.11.10-scratch |
2.10.29, 2.10 | 2.10.29-scratch |
启动单节点NATS服务器,映射默认端口:
bashdocker run -d \ --name nats-server \ -p 4222:4222 # 客户端连接端口 \ -p 8222:8222 # HTTP管理端口 \ -p 6222:6222 # 集群路由端口 \ arm32v6/nats
修改服务器监听端口(需同时调整容器端口映射):
bash# 服务器监听4444端口,宿主机映射5555端口 docker run -d \ --name nats-custom-port \ -p 5555:4444 \ arm32v6/nats -p 4444
启用JetStream功能(持久化流处理):
bashdocker run -d \ --name nats-jetstream \ -p 4222:4222 \ arm32v6/nats -js
使用Docker卷持久化JetStream数据:
bash# 创建数据卷 docker volume create nats-data # 启动服务器并挂载卷 docker run -d \ --name nats-js-persist \ -p 4222:4222 \ -v nats-data:/data \ # 挂载数据卷到容器/data目录 arm32v6/nats -js -sd /data # -sd指定JetStream存储目录
部署两个节点组成集群:
bash# 启动第一个节点(主节点) docker run -d \ --name nats-node1 \ -p 4222:4222 \ -p 6222:6222 \ arm32v6/nats -cluster name=my_cluster,port=6222 # 启动第二个节点并连接到主节点 docker run -d \ --name nats-node2 \ -p 4223:4222 \ -p 6223:6222 \ --link nats-node1 \ # 链接到主节点容器 arm32v6/nats -cluster name=my_cluster,port=6222 --routes=nats-route://ruser:T0pS3cr3t@nats-node1:6222
创建docker-compose.yml配置文件:
yamlversion: '3' services: nats: image: arm32v6/nats:alpine container_name: nats-server ports: - "4222:4222" # 客户端端口 - "8222:8222" # 管理端口 - "6222:6222" # 集群端口 volumes: - nats-data:/data # 持久化数据卷 command: -js -sd /data # 启用JetStream并指定存储目录 restart: unless-stopped volumes: nats-data: # 定义数据卷
启动服务:
bashdocker-compose up -d
容器内默认配置文件路径:/etc/nats/nats-server.conf,内容如下:
conf# 客户端端口(所有接口) port: 4222 # HTTP监控端口 monitor_port: 8222 # 集群配置 cluster { # 集群名称 name: "my_cluster" # 路由连接端口(所有接口) port: 6222 # 路由认证配置 authorization { user: ruser password: T0pS3cr3t timeout: 2 } # 主动连接的路由列表(默认空) routes = [] }
NATS服务器支持以下核心命令行参数(完整列表见下方):
| 参数 | 说明 |
|---|---|
-a, --addr <host> | 绑定主机地址(默认:0.0.0.0) |
-p, --port <port> | 客户端端口(默认:4222) |
-m, --http_port <port> | HTTP监控端口 |
-c, --config <file> | 指定配置文件路径 |
-js, --jetstream | 启用JetStream功能 |
-sd, --store_dir <dir> | JetStream存储目录 |
--routes <urls> | 集群路由URL列表(逗号分隔) |
-D, --debug | 启用调试日志 |
-V, --trace | 启用协议跟踪 |
完整命令行选项:
bashServer Options: -a, --addr, --net <host> 绑定主机地址(默认:0.0.0.0) -p, --port <port> 客户端端口(默认:4222) -n, --name, --server_name <name> 服务器名称(默认:自动生成) -P, --pid <file> PID文件路径 -m, --http_port <port> HTTP监控端口 -ms,--https_port <port> HTTPS监控端口 -c, --config <file> 配置文件路径 -t 测试配置并退出 -sl,--signal <signal>[=<pid>] 发送信号给服务器进程(stop, quit, reopen, reload) --client_advertise <url> 客户端连接URL(用于集群广告) --ports_file_dir <dir> 端口文件存储目录 Logging Options: -l, --log <file> 日志输出文件 -T, --logtime 日志时间戳(默认:启用) -s, --syslog 输出到syslog/windows事件日志 -r, --remote_syslog <addr> 远程syslog服务器地址(udp://localhost:514) -D, --debug 启用调试日志 -V, --trace 跟踪原始协议 -VV 详细跟踪(含系统账号) -DV 同时启用调试和跟踪 -DVV 调试和详细跟踪 --log_size_limit <limit> 日志文件大小限制(默认:自动) --max_traced_msg_len <len> 跟踪消息最大打印长度(默认:无限制) JetStream Options: -js, --jetstream 启用JetStream功能 -sd, --store_dir <dir> JetStream存储目录 Authorization Options: --user <user> 客户端连接用户名 --pass <password> 客户端连接密码 --auth <token> 客户端连接令牌 TLS Options: --tls 启用TLS(不验证客户端) --tlscert <file> 服务器证书文件 --tlskey <file> 服务器私钥文件 --tlsverify 启用TLS并验证客户端证书 --tlscacert <file> 客户端CA证书文件 Cluster Options: --routes <rurl-1,rurl-2> 集群路由URL列表 --cluster <url> 集群广告URL --cluster_name <name> 集群名称(默认:自动生成) --no_advertise <bool> 不向客户端广告集群信息 --cluster_advertise <url> 集群广告URL --connect_retries <num> 路由连接重试次数 --cluster_listen <url> 集群监听URL Profiling Options: --profile <port> 性能分析HTTP端口 Common Options: -h, --help 显示帮助信息 -v, --version 显示版本信息 --help_tls TLS帮助信息
arm32v6/nats:<version>(默认版本)基于scratch(空镜像)构建,仅包含NATS服务器二进制文件,体积最小(~10MB),适合对镜像大小敏感的场景。由于基于scratch,不包含Shell和基础系统工具,仅适用于直接运行NATS服务器。
arm32v6/nats:<version>-alpine基于Alpine Linux构建,包含精简的系统环境(~5MB基础镜像),提供基本的Shell工具,便于调试和扩展。适合需要在容器内执行简单系统命令的场景,同时保持较小的镜像体积。
NATS服务器软件许可协议参见https://github.com/nats-io/gnatsd/blob/master/LICENSE%E3%80%82
Docker镜像包含的第三方软件(如基础系统组件)可能具有独立许可证,详细信息参见https://github.com/docker-library/repo-info/tree/master/repos/nats%E3%80%82
使用本镜像即表示您同意遵守所有包含软件的许可条款。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 arm32v6/nats 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: