如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
goval-dictionary Docker镜像是用于构建本地OVAL(Open Vulnerability and Assessment Language)漏洞数据库的工具容器化版本。该工具可从多个Linux发行版官方源获取漏洞数据,存储为sqlite、MySQL等格式的本地数据库,并提供命令行查询和HTTP服务器功能,便于漏洞信息的快速检索与集成。
bashdocker pull kotakanbe/goval-dictionary:latest
bashdocker run -v /path/to/local/data:/data \ kotakanbe/goval-dictionary \ [command] [flags]
说明:
/path/to/local/data为本地目录,用于持久化数据库文件和日志,容器内对应路径为/data
1. 获取漏洞数据(fetch)
获取RedHat漏洞数据(版本5/6/7/8)
bashdocker run -v $(pwd)/data:/data \ kotakanbe/goval-dictionary \ fetch redhat 5 6 7 8 \ --dbpath /data/oval.sqlite3 \ --log-dir /data/log
获取Debian漏洞数据(版本7/8/9/10)
bashdocker run -v $(pwd)/data:/data \ kotakanbe/goval-dictionary \ fetch debian 7 8 9 10 \ --dbpath /data/oval.sqlite3
获取Ubuntu漏洞数据(版本14/16/18/20)
bashdocker run -v $(pwd)/data:/data \ kotakanbe/goval-dictionary \ fetch ubuntu 14 16 18 20 \ --dbpath /data/oval.sqlite3
获取Alpine漏洞数据(版本3.10/3.11/3.12)
bashdocker run -v $(pwd)/data:/data \ kotakanbe/goval-dictionary \ fetch alpine 3.10 3.11 3.12 \ --dbpath /data/oval.sqlite3
2. 启动HTTP服务器(server)
bashdocker run -d -p 1324:1324 \ -v $(pwd)/data:/data \ --name goval-server \ kotakanbe/goval-dictionary \ server \ --bind 0.0.0.0 \ --port 1324 \ --dbpath /data/oval.sqlite3
访问示例:查询Ubuntu 16.04的CVE-2017-***漏洞
curl http://localhost:1324/cves/ubuntu/16/CVE-2017-15400 | jq
3. 命令行查询(select)
按包名查询(如RedHat 7的golang包)
bashdocker run -v $(pwd)/data:/data \ kotakanbe/goval-dictionary \ select --by-package redhat 7 golang x86_64 \ --dbpath /data/oval.sqlite3
按CVE-ID查询(如CVE-2017-6009)
bashdocker run -v $(pwd)/data:/data \ kotakanbe/goval-dictionary \ select --by-cveid redhat 7 CVE-2017-6009 \ --dbpath /data/oval.sqlite3
全局参数
| 参数名 | 说明 | 默认值 |
|---|---|---|
--config | 配置文件路径 | $HOME/.oval.yaml |
--dbpath | 数据库路径(sqlite文件路径或SQL连接字符串) | /data/oval.sqlite3 |
--dbtype | 数据库类型(sqlite3/mysql/postgres/redis) | sqlite3 |
--debug | 启用调试模式 | false |
--debug-sql | 启用SQL调试模式(输出SQL语句) | - |
--http-proxy | HTTP代理地址(如http://proxy:port) | - |
--log-dir | 日志目录路径 | /data/log |
--log-json | 输出JSON格式日志 | - |
服务器模式参数(server命令)
| 参数名 | 说明 | 默认值 |
|---|---|---|
--bind | HTTP服务器绑定IP | 127.0.0.1 |
--port | HTTP服务器端口 | 1324 |
yamlversion: '3' services: goval-dictionary: image: kotakanbe/goval-dictionary:latest volumes: - ./data:/data ports: - "1324:1324" command: server --bind 0.0.0.0 --dbpath /data/oval.sqlite3 environment: - TZ=Asia/Shanghai restart: unless-stopped
为确保数据库和日志数据不丢失,需将容器内/data目录挂载到本地目录:
bashmkdir -p ./data/{db,log} docker run -v $(pwd)/data/db:/data \ -v $(pwd)/data/log:/data/log \ kotakanbe/goval-dictionary fetch redhat 7 8 --dbpath /data/oval.sqlite3
fetch命令时,根据获取的发行版和版本数量,数据下载和处理可能需要较长时间--dbpath为连接字符串(如mysql://user:pass@host:port/dbname?parseTime=true)您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。





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