arm32v6/nats是NATS消息系统服务器的Docker镜像,专为arm32v6架构构建。NATS是一个开源、高性能的云原生消息系统,旨在提供低延迟、高吞吐量的异步通信能力,适用于分布式系统和微服务架构。
注意:本镜像为nats镜像的"按架构"仓库,仅包含arm32v6架构构建。更多架构信息参见镜像文档。
| 标签 | 对应的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 | Dockerfile |
2.12.1-scratch, 2.12-scratch, 2-scratch, scratch, 2.12.1-linux, 2.12-linux, 2-linux, linux | Dockerfile |
2.11.10-alpine3.22, 2.11-alpine3.22, 2.11.10-alpine, 2.11-alpine | Dockerfile |
2.11.10-scratch, 2.11-scratch, 2.11.10-linux, 2.11-linux | Dockerfile |
2.10.29-alpine3.22, 2.10-alpine3.22, 2.10.29-alpine, 2.10-alpine | Dockerfile |
2.10.29-scratch, 2.10-scratch, 2.10.29-linux, 2.10-linux | 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服务器软件许可协议参见GitHub仓库。
Docker镜像包含的第三方软件(如基础系统组件)可能具有独立许可证,详细信息参见repo-info仓库。
使用本镜像即表示您同意遵守所有包含软件的许可条款。

来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429