OSIRIS 是一个开源全球情报平台,作为 Palantir 的替代方案
OSIRIS 详细部署教程
OSIRIS 是一个开源全球情报平台,作为 Palantir 的替代方案,它通过 GPU 加速的 WebGL 界面,整合了实时航班追踪、闭路电视网络、地震监测、冲突区域地图和 24/7 新闻推送等多种情报数据源。
本教程将指导你完成从零开始的完整部署。
1. 准备工作
1.1 基础环境要求
| 要求 | 版本/说明 |
|---|---|
| 操作系统 | Linux、macOS 或 Windows (支持 Docker) |
| Node.js | 22+ (推荐,或使用 Docker) |
| npm | 随 Node.js 安装 |
| Git | 用于克隆代码仓库 |
| Docker | 可选,用于容器化部署 |
1.2 克隆代码仓库
使用 Git 将项目克隆到本地:
1 | git clone https://github.com/simplifaisoul/osiris.git |
2. 基础部署方式(Node.js 直接运行)
这是最简单的部署方式,适合开发和测试环境。
2.1 安装项目依赖
1 | npm install |
2.2 配置环境变量(可选)
复制示例环境变量文件:
1 | cp .env.template .env |
说明:OSIRIS 部分功能无需 API 密钥即可工作,所有核心数据源均使用公开、免密钥的来源。
.env文件已被.gitignore忽略,不会提交到仓库。
2.3 启动开发服务器
1 | npm run dev |
2.4 访问应用
打开浏览器访问:http://localhost:3000
3. 使用 Docker 部署(推荐生产环境)
Docker 部署是最便捷的生产环境方案,提供一致的运行环境。
3.1 使用 Docker Compose(最简单)
在项目根目录下运行:
1 | docker compose up -d |
该命令会:
- 自动拉取或构建镜像
- 在后台运行容器
- 将容器的 3000 端口映射到主机的 3000 端口
3.2 使用预构建镜像(跳过构建)
直接从 GitHub Container Registry 拉取预构建镜像:
1 | docker pull ghcr.io/simplifaisoul/osiris:latest |
3.3 自定义主机端口
如果主机的 3000 端口已被占用,可以在 .env 文件中修改 OSIRIS_PORT 变量:
1 | # .env 文件示例 |
然后重新运行 docker compose up -d,应用会通过主机的 3005 端口访问。
3.4 手动构建 Docker 镜像
如需自定义构建:
1 | docker build -t osiris:latest . |
镜像特点:采用
node:22-alpine多阶段构建,镜像约 220 MB,以非 root 用户运行。
4. 环境变量详解
虽然 OSIRIS 无需密钥即可运行核心功能,但配置以下变量可以解锁更多高级特性或提高速率限制。
| 变量名 | 用途 | 获取途径 |
|---|---|---|
OSIRIS_PORT |
修改 Docker 发布到主机的端口 | 自定义,默认 3000 |
SCANNER_URL |
RECON 工具包的后端扫描器 URL | 自定义部署 |
SCANNER_KEY |
与后端扫描器匹配的密钥 | openssl rand -hex 32 生成 |
FIRMS_API_KEY |
NASA FIRMS 火灾数据(更高速率限制) | firms.modaps.eosdis.nasa.gov |
OPENSKY_CLIENT_ID |
OpenSky 网络 OAuth2 凭证 | opensky-network.org |
OPENSKY_CLIENT_SECRET |
OpenSky 网络 OAuth2 凭证 | 同上 |
N2YO_API_KEY |
N2YO 卫星追踪数据 | n2yo.com (个人资料 → API 密钥) |
AIS_API_KEY |
aisstream.io 海事数据 | aisstream.io |
⚠️ 注意:如果未配置
SCANNER_URL和SCANNER_KEY,RECON 工具包(端口扫描、WHOIS 等)会返回503状态,但其他所有图层功能正常。
5. 关键功能验证
部署成功后,可以验证以下核心情报层是否正常加载:
5.1 核心数据图层(无需配置)
- 航班追踪 (
F键切换):显示商业、私人、军用飞机 - 地震监测 (
E键切换):显示 M2.5+ 级实时地震 - 闭路电视网络:全球 17,000+ 个公开摄像头
- 新闻推送:25+ 个全球广播公司 24/7 直播
- 冲突区域:13 个活跃冲突/紧张区域标记
- 火灾热点:NASA FIRMS 活跃野火数据
- 卫星追踪 (
S键切换):N2YO 卫星实时位置
5.2 RECON 工具包(需配置后端)
如需使用端口扫描、DNS 查询、WHOIS、漏洞扫描等高级侦察功能,需要部署并配置 SCANNER_URL 和 SCANNER_KEY。
6. 故障排除
6.1 端口冲突
错误:Error: listen EADDRINUSE: address already in use :::3000
解决:修改 .env 中的 OSIRIS_PORT 或在 Docker 命令中映射不同端口(例如 -p 3005:3000)。
6.2 Docker 容器无法启动
检查:
1 | # 查看容器日志 |
6.3 RECON 工具返回 503
原因:未配置 SCANNER_URL 和 SCANNER_KEY。
解决:如需此功能,请参考文档部署配套的扫描器后端并配置环境变量。
6.4 地图图层不显示数据
可能原因:
- 浏览器阻止了 WebGL 或跨域请求
- 外部 API 服务暂时不可用(检查网络控制台错误)
- 在中国大陆等地区,部分国际 API 可能无法直接访问,需配置代理或使用镜像源。
7. 下一步
- 查看完整文档:项目内
DOCKER.md和README.md - 参与社区:Discord 频道 获取支持
- 报告问题:GitHub Issues
- 贡献代码:参阅
CONTRIBUTING.md指南
OSIRIS 是一个强大的开源情报聚合平台,其部署相对简单,核心功能无需付费即可使用。通过上述步骤,你可以在几分钟内拥有一个功能完整的全球态势感知仪表板。





