
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
基于Bun、TypeScript和SQLite构建的高性能轻量级日志聚合服务,包含日志收集器、查询API和React仪表盘,所有功能整合在单个容器中。
bashdocker run -d \ --name warehouse-of-logs \ -p 7001:7001 \ -p 7002:7002 \ -p 7003:7003 \ -e ADMIN_USER=admin \ -e ADMIN_PASSWORD=changeme \ -v wol-data:/data \ docker.xuanyuan.run/pallavsharma505/warehouse-of-logs:latest
| 端口 | 服务说明 |
|---|---|
| 7001 | 日志收集器(日志摄入) |
| 7002 | API服务(查询与管理) |
| 7003 | 前端仪表盘(React) |
打开 http://localhost:7003 访问仪表盘。
yamlservices: warehouse-of-logs: image: docker.xuanyuan.run/pallavsharma505/warehouse-of-logs:latest container_name: warehouse-of-logs restart: unless-stopped ports: - "7001:7001" - "7002:7002" - "7003:7003" environment: COLLECTOR_PORT: "7001" API_PORT: "7002" DATABASE_PATH: "/data/logs.sqlite" ADMIN_USER: "admin" ADMIN_PASSWORD: "changeme" volumes: - wol-data:/data volumes: wol-data: driver: local
启动命令:
bashdocker compose up -d
| 变量名 | 默认值 | 描述 |
|---|---|---|
ADMIN_USER | admin | 仪表盘和API登录用户名 |
ADMIN_PASSWORD | admin | 仪表盘和API登录密码 |
COLLECTOR_PORT | 7001 | 收集器服务端口 |
API_PORT | 7002 | API服务端口 |
DATABASE_PATH | /data/logs.sqlite | SQLite数据库路径 |
JWT_SECRET | 自动生成 | JWT令牌签名密钥 |
重要提示:部署到生产环境前,请修改默认的
ADMIN_USER和ADMIN_PASSWORD。
仪表盘和所有API端点(除/health外)需要身份验证。打开**http://localhost:7003**%EF%BC%8C%E4%BD%BF%E7%94%A8%60ADMIN_USER%60%E5%92%8C%60ADMIN_PASSWORD%60%E7%99%BB%E5%BD%95%E3%80%82
通过API获取JWT令牌:
bashTOKEN=$(curl -s http://localhost:7002/login -X POST \ -H "Content-Type: application/json" \ -d '{"username": "admin", "password": "changeme"}' | jq -r '.token')
后续API请求需携带令牌:
bashcurl -s http://localhost:7002/logs \ -H "Authorization: Bearer $TOKEN" | jq
bashcurl -s http://localhost:7002/keys -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $TOKEN" \ -d '{"name": "my-app"}' | jq
保存返回的key,仅显示一次。
bashcurl http://localhost:7001/ingest -X POST \ -H "Content-Type: application/json" \ -H "Authorization: Bearer <YOUR_API_KEY>" \ -d '{ "app_name": "my-app", "level": "INFO", "message": "来自WarehouseOfLogs的问候!" }'
bashcurl -s http://localhost:7002/logs \ -H "Authorization: Bearer $TOKEN" | jq
或通过**http://localhost:7003**%E7%9A%84web%E4%BB%AA%E8%A1%A8%E7%9B%98%E6%9F%A5%E8%AF%A2%E3%80%82
json{ "app_name": "字符串(必填)", "level": "INFO | WARN | ERROR | DEBUG(必填)", "message": "字符串(必填)", "timestamp": "ISO 8601格式字符串(可选)", "metadata": "对象(可选)", "persist": "布尔值(可选,默认:false)", "expires_in": "秒数(可选,默认:86400)" }
支持批量摄入,向同一端点发送日志对象数组即可。
SQLite数据库默认存储在容器内/data/logs.sqlite路径。挂载卷到/data可实现容器重启后日志持久化。
适用于Node.js、Bun或Deno应用的程序化日志发送:
bashnpm install warehouse-of-logs-client
typescriptimport { WolClient } from "warehouse-of-logs-client"; const logger = new WolClient({ collectorUrl: "http://localhost:7001", apiKey: "your-api-key", appName: "my-service", }); logger.info("用户登录", { userId: "abc123" }); await logger.shutdown();
完整文档:https://www.npmjs.com/package/warehouse-of-logs-client
| 方法 | 端点 | 描述 |
|---|---|---|
| POST | /ingest | 摄入单条或批量日志 |
| GET | /health | 健康检查 |
| 方法 | 端点 | 认证 | 描述 |
|---|---|---|---|
| POST | /login | 无 | 使用管理员凭证获取JWT令牌 |
| GET | /health | 无 | 健康检查 |
| GET | /logs | JWT | 查询日志(过滤、搜索、分页) |
| DELETE | /logs | JWT | 批量删除符合条件的日志 |
| GET | /logs/export | JWT | 导出日志为JSONL文件 |
| GET | /logs/:id | JWT | 获取单条日志 |
| GET | /stats | JWT | 聚合统计与图表 |
| GET | /apps | JWT | 列出所有应用名称 |
| GET | /keys | JWT | 列出API密钥 |
| POST | /keys | JWT | 创建新API密钥 |
| PATCH | /keys/:id/revoke | JWT | 吊销API密钥 |
| DELETE | /keys/:id | JWT | 删除API密钥 |
GitHub: https://github.com/pallavsharma505/warehouse-of-logs
npm: https://www.npmjs.com/package/warehouse-of-logs-client
Apache License 2.0 — Copyright 2026 Pallav Sharma.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务