如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
RavenDB Docker 镜像提供两种版本:基于 Ubuntu 的 Linux 容器版本和基于 Windows Nanoserver 的 Windows 容器版本,用于部署 RavenDB 4.0 NoSQL 数据库。镜像支持持久化存储、灵活配置及跨平台部署,适用于开发、测试及生产环境。
settings.json)及命令行参数(CLI)配置,优先级依次为环境变量 > 配置文件 > CLI 参数。| 标签 | 描述 |
|---|---|
ubuntu-latest | 基于 Ubuntu 16.04 的最新 RavenDB 4.0 版本(Linux 容器) |
windows-nanoserver-latest | 基于 Windows Nanoserver 的最新 RavenDB 4.0 版本(Windows 容器) |
latest | 指向 ubuntu-latest(默认 Linux 版本) |
4.0.x 系列(如 4.0.5) | 对应 RavenDB 4.0 具体版本,同时提供 Ubuntu 和 Windows 容器版本 |
注: nightly 构建版本可从 https://hub.docker.com/r/ravendb/ravendb-nightly/ 获取。
Linux 容器(Ubuntu 基础)
bashdocker run -p 8080:8080 ravendb/ravendb:ubuntu-latest
Windows 容器(Nanoserver 基础)
powershelldocker run -p 8080:8080 ravendb/ravendb:windows-nanoserver-latest
官方提供脚本简化容器配置,支持通过参数调整 RavenDB 运行模式:
脚本参数说明
| 参数 | 默认值 | 描述 |
|---|---|---|
-DryRun | - | 打印 docker run 命令并退出,不实际启动容器 |
-LogsMode | Operations | 设置日志级别(可选值:Operations、Information) |
-ConfigPath | - | 容器内配置文件的绝对路径(需通过卷挂载主机文件) |
-DataDir | - | 主机数据目录路径,挂载至容器数据卷(未指定则使用 Docker ***卷) |
-BindPort | 8080 | 容器暴露的 HTTP 端口(RavenDB 服务端口) |
-BindTcpPort | 38888 | 容器暴露的 TCP 端口(用于集群节点通信) |
-NoSetup | - | 禁用安装向导(等价于 RAVEN_Setup_Mode='None') |
-RemoveOnExit | - | 容器退出时自动删除容器 |
-PublicServerUrl | - | 外部访问的 HTTP 地址(如 http://node1.example.com:8080) |
-PublicTcpServerUrl | - | 外部访问的 TCP 地址(如 tcp://node1.example.com:38888) |
-Unsecured | - | 禁用身份验证(仅开发环境使用,生产环境不建议) |
以下为 Linux 容器的 docker-compose.yml 示例,配置持久化数据卷及无安全验证模式:
yamlversion: '3' services: ravendb: image: ravendb/ravendb:ubuntu-latest ports: - "8080:8080" # HTTP 服务端口 - "38888:38888" # TCP 集群端口 volumes: - ./ravendb-data:/opt/RavenDB/Server/RavenData # 数据卷(主机目录挂载) - ./ravendb-config:/opt/RavenDB/config # 配置卷(主机目录挂载) environment: - RAVEN_Setup_Mode='None' # 禁用安装向导 - RAVEN_Security_UnsecuredAccessAllowed='PrivateNetwork' # 允许私有网络无安全访问 - RAVEN_Logs_Mode='Information' # 日志级别设为 Information - RAVEN_ARGS='--log-to-console' # 启用控制台日志输出
RavenDB 镜像使用两个专用卷实现持久化,路径因容器类型而异:
/opt/RavenDB/configC:\RavenDB\Config/opt/RavenDB/Server/RavenDataC:/RavenDB/Server/RavenDataRavenDB 支持三种配置方式,优先级从高到低为:环境变量 > settings.json 配置文件 > CLI 参数。
所有以 RAVEN_ 为前缀的环境变量会被解析为 RavenDB 配置项,格式为 RAVEN_<Section>_<Key>='Value'。例如:
| 环境变量 | 描述 |
|---|---|
RAVEN_Setup_Mode='None' | 禁用安装向导 |
RAVEN_Logs_Mode='Operations' | 设置日志级别为 Operations(默认) |
RAVEN_Security_UnsecuredAccessAllowed='PrivateNetwork' | 允许私有网络无安全访问 |
settings.json)通过挂载配置卷,可将主机的 settings.json 映射到容器配置目录。配置文件示例:
json{ "Setup": { "Mode": "None" // 禁用安装向导 }, "Security": { "UnsecuredAccessAllowed": "PrivateNetwork" // 允许私有网络无安全访问 }, "Logs": { "Mode": "Information" // 日志级别设为 Information } }
注:配置文件路径需通过
--config-pathCLI 参数指定(见下文 CLI 参数)。
通过 RAVEN_ARGS 环境变量传递 CLI 参数,例如:
bashRAVEN_ARGS='--log-to-console --config-path /opt/RavenDB/config/custom-settings.json'
--log-to-console:启用控制台日志输出(支持 docker logs 查看)。--config-path <PATH>:指定自定义配置文件路径(需通过卷挂载至容器)。设置环境变量 RAVEN_Setup_Mode='None',或在 settings.json 中配置 "Setup": { "Mode": "None" }。
配置以下环境变量:
bashRAVEN_Setup_Mode='None' RAVEN_Security_UnsecuredAccessAllowed='PrivateNetwork'
通过 RAVEN_ARGS 环境变量指定,例如:
bashRAVEN_ARGS='--log-to-console --max-server-memory 4096' # 启用控制台日志并限制内存为 4GB
docker logs 查看 RavenDB 日志?需启用控制台日志输出,设置环境变量:
bashRAVEN_ARGS='--log-to-console'
日志级别可通过 RAVEN_Logs_Mode 调整(如 RAVEN_Logs_Mode='Debug')。
custom-settings.json)通过卷挂载至容器配置卷;RAVEN_ARGS 指定配置文件路径:bashRAVEN_ARGS='--config-path /opt/RavenDB/config/custom-settings.json' # Ubuntu 容器示例
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务