
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像基于nacos-server 2.2.3版本构建,内置多数据库初始化脚本及多数据源插件,支持内嵌Derby数据库及MySQL、达梦、人大金仓、Oracle、翰高、神州通用等外置数据源。提供单服务(standalone)和集群(cluster)两种部署模式,适用于各类微服务架构中的服务发现与配置管理场景。
镜像内置配置文件和多数据库初始化脚本,可通过以下命令将其拷贝到本地持久化目录(请将/path/to/nacos替换为实际绝对路径):
shdocker run --rm --entrypoint "" -v "/path/to/nacos:/data" minstonehub/nacos-server:2.2.3 cp -r /home/nacos/conf/ /data/
进入/path/to/nacos/conf目录可查看以下关键文件:
shcd /path/to/nacos/conf && ls
application.properties:应用配置文件application.properties.example:配置项及描述示例nacos-logback.xml:日志配置文件derby-schema.sql:内嵌Derby数据库脚本mysql-schema.sql:MySQL数据库脚本nacos-dm.sql:达梦数据库脚本nacos-highgo.sql:翰高数据库脚本nacos-kingbase.sql:人大金仓数据库脚本nacos-oracle.sql:Oracle数据库脚本nacos-oscar.sql:神州通用数据库脚本数据库准备:
/path/to/nacos/conf/nacos-*.sql)特殊数据库配置:
人大金仓数据库:
因默认将空字符串设为NULL导致默认命名空间失效,需修改配置:
kdb/data/kingbase.confora_input_emptystr_isnull = falseOracle数据库:
因默认将空字符串设为NULL导致默认命名空间失效,需修改配置:
init<数据库实例名称>.oraora_input_emptystr_isnull = false| 挂载项 | 描述 | 必要性 |
|---|---|---|
/home/nacos/conf/application.properties | 应用配置文件 | 自定义配置时需挂载 |
/home/nacos/conf/cluster.properties | 集群配置文件 | 集群部署时需挂载 |
/home/nacos/data | 数据目录 | 建议挂载(持久化数据) |
/home/nacos/logs | 日志目录 | 建议挂载(方便日志查看) |
| 端口 | 偏移量 | 描述 |
|---|---|---|
| 8848 | 0 | 主端口,客户端、控制台及OpenAPI的HTTP端口 |
| 9848 | 1000 | 客户端gRPC请求端口 |
| 9849 | 1001 | 服务端间gRPC通信端口(集群部署需开放) |
| 7848 | -1000 | Jraft协议通信端口(集群部署需开放) |
注意:使用VIP/nginx转发时需配置TCP转发,不可用http2转发;9849和7848端口为服务端内部通信端口,禁止暴露到外部网络。
通过环境变量MODE配置:
| 值 | 描述 |
|---|---|
standalone | 单服务部署 |
cluster | 集群部署 |
方式一:环境变量配置
通过NACOS_SERVERS参数指定集群节点,格式:ip1:port1 ip2:port2 ip3:port3
方式二:配置文件挂载
挂载cluster.properties文件,格式示例:
conf# 集群节点列表(IP[:端口],默认端口8848) 192.168.16.101:8847 192.168.16.102 192.168.16.103
节点注册模式
通过PREFER_HOST_MODE指定节点注册时使用IP或主机名:
| 值 | 描述 | 默认值 |
|---|---|---|
hostname | 使用主机名 | - |
ip | 使用IP | 是 |
通过环境变量配置客户端鉴权:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
NACOS_AUTH_ENABLE | 是否开启权限系统 | false |
NACOS_AUTH_TOKEN_EXPIRE_SECONDS | accessToken过期时间(秒) | *** |
NACOS_AUTH_TOKEN | 生成accessToken的密钥(集群需一致) | - |
NACOS_AUTH_CACHE_ENABLE | 权限缓存开关(延迟15秒更新) | false |
NACOS_AUTH_IDENTITY_KEY | 自定义身份识别key(集群需一致) | - |
NACOS_AUTH_IDENTITY_VALUE | 自定义身份识别value(集群需一致) | - |
客户端配置示例:
yamlnacos: config: server-addr: 127.0.0.1:8848 username: 2222 # 鉴权账号 password: 2xxx # 鉴权密码
通过环境变量或配置文件设置外置数据源参数:
| 环境变量 | 描述 | 配置要求 |
|---|---|---|
SPRING_DATASOURCE_PLATFORM | 数据源类型 | derby(默认)、mysql、base(其他数据源) |
DATASOURCE_URL | 数据库连接URL | 外置数据源必填 |
DATASOURCE_USER | 数据库用户名 | 外置数据源必填 |
DATASOURCE_PASSWORD | 数据库密码 | 外置数据源必填 |
DATASOURCE_DRIVER | 数据库驱动类名 | 外置数据源必填 |
DATASOURCE_TEST | 数据库测试语句 | 非必填 |
docker run部署单节点内嵌数据源
shdocker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ minstonehub/nacos-server:2.2.3
单节点外置数据源
shdocker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ -e NACOS_AUTH_IDENTITY_KEY=2222 \ -e NACOS_AUTH_IDENTITY_VALUE=2xxx \ -e NACOS_AUTH_TOKEN=SecretKey012345678901234567890123456789012345678901234567890123456789 \ -e SPRING_DATASOURCE_PLATFORM=base \ -e DATASOURCE_URL="jdbc:kingbase8://IP:PORT/DATABASE?useUnicode=true&characterEncoding=utf-8" \ -e DATASOURCE_USER=USER \ -e DATASOURCE_PASSWORD=PASSWORD \ -e DATASOURCE_DRIVER=com.kingbase8.Driver \ -v /path/to/nacos/data:/home/nacos/data \ -v /path/to/nacos/logs:/home/nacos/logs \ minstonehub/nacos-server:2.2.3
shdocker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ -e SPRING_DATASOURCE_PLATFORM=mysql \ -e DATASOURCE_URL="jdbc:mysql://IP:PORT/DATABASE?useUnicode=true&characterEncoding=utf8&useSSL=false" \ -e DATASOURCE_USER=USER \ -e DATASOURCE_PASSWORD=PASSWORD \ -e DATASOURCE_DRIVER=com.mysql.jdbc.Driver \ -v /path/to/nacos/data:/home/nacos/data \ -v /path/to/nacos/logs:/home/nacos/logs \ minstonehub/nacos-server:2.2.3
shdocker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ -e SPRING_DATASOURCE_PLATFORM=base \ -e DATASOURCE_URL="jdbc:dm://IP:PORT/DATABASE" \ -e DATASOURCE_USER=USER \ -e DATASOURCE_PASSWORD=PASSWORD \ -e DATASOURCE_DRIVER=dm.jdbc.driver.DmDriver \ -v /path/to/nacos/data:/home/nacos/data \ -v /path/to/nacos/logs:/home/nacos/logs \ minstonehub/nacos-server:2.2.3
shdocker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ -e SPRING_DATASOURCE_PLATFORM=base \ -e DATASOURCE_URL="jdbc:oracle:thin://IP:PORT/DATABASE" \ -e DATASOURCE_USER=USER \ -e DATASOURCE_PASSWORD=PASSWORD \ -e DATASOURCE_DRIVER=oracle.jdbc.OracleDriver \ -v /path/to/nacos/data:/home/nacos/data \ -v /path/to/nacos/logs:/home/nacos/logs \ minstonehub/nacos-server:2.2.3
docker-compose部署单节点内嵌数据源
yamlnacos: image: minstonehub/nacos-server:2.2.3 container_name: nacos environment: - MODE=standalone - PREFER_HOST_MODE=hostname volumes: - /path/to/nacos/data:/home/nacos/data - /path/to/nacos/logs:/home/nacos/logs ports: - 8848:8848 - 9848:9848 networks: - myHost
单节点外置数据源(以MySQL为例)
yamlnacos: image: minstonehub/nacos-server:2.2.3 container_name: nacos environment: - MODE=standalone - PREFER_HOST_MODE=hostname - SPRING_DATASOURCE_PLATFORM=mysql - DATASOURCE_URL="jdbc:mysql://IP:PORT/DATABASE?useUnicode=true&characterEncoding=utf8&useSSL=false" - DATASOURCE_USER=USER - DATASOURCE_PASSWORD=PASSWORD - DATASOURCE_DRIVER=com.mysql.jdbc.Driver volumes: - /path/to/nacos/data:/home/nacos/data - /path/to/nacos/logs:/home/nacos/logs ports: - 8848:8848 - 9848:9848 networks: - myHost
通过挂载自定义application.properties配置数据库参数:
conf# 单数据库配置 db.num=1 # 人大金仓数据库示例 db.url.0=jdbc:kingbase8://IP:PORT/DATABASE?useUnicode=true&characterEncoding=utf-8 db.user.0=USER db.password.0=PASSWORD # 数据库驱动配置 db.pool.config.driverClassName=com.kingbase8.Driver db.pool.config.connectionTestQuery=SELECT 1
docker run挂载示例:
shdocker run -d \ --name nacos \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ -e PREFER_HOST_MODE=hostname \ -v /path/to/nacos/data:/home/nacos/data \ -v /path/to/nacos/logs:/home/nacos/logs \ -v /path/to/nacos/conf/application.properties:/home/nacos/conf/application.properties \ minstonehub/nacos-server:2.2.3
/path/to/nacos/logs/config-fatal.logJAVA_OPT="-Dfile.encoding=UTF8"启动容器更多配置详情请参考nacos官网
以下是 minstonehub/nacos-server 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。





来自真实用户的反馈,见证轩辕镜像的优质服务