
octopus
一个网关管所有大模型,密钥、路由、计费全搞定
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 2742
使用教程
环境要求
- 已安装 Docker(或 Docker + Docker Compose)
- 一个用于持久化数据的本地目录,如 /path/to/data
- 若使用 MySQL/PostgreSQL,需提前手动创建数据库
安装与启动步骤
-
1启动容器
用官方镜像直接运行,把本地目录挂载到 /app/data 以持久化配置和数据库文件,并映射 8080 端口。
docker run -d --name octopus -v /path/to/data:/app/data -p 8080:8080 bestrui/octopus -
2或用 Compose 启动
下载官方 docker-compose.yml 后用 compose 启动,适合需要长期维护的部署方式。
wget https://raw.githubusercontent.com/bestruirui/octopus/refs/heads/master/docker-compose.yml docker compose up -d -
3检查配置文件
首次启动会自动在 data 目录生成 config.json,默认使用 SQLite,通常无需修改即可使用。
cat /path/to/data/config.json -
4按需修改配置
如需改监听端口、切换 MySQL/PostgreSQL 或调整日志级别,编辑 data/config.json 后重启容器生效。
docker restart octopus
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
server.host | 否 | 服务监听地址,默认 0.0.0.0 | 0.0.0.0 |
server.port | 否 | 服务监听端口,默认 8080 | 8080 |
database.type | 否 | 数据库类型,支持 sqlite/mysql/postgres | sqlite |
database.path | 否 | 数据库连接串,格式随类型不同 | data/data.db |
database.path(MySQL) | 否 | MySQL 连接串格式 | root:password@tcp(127.0.0.1:3306)/octopus |
database.path(PostgreSQL) | 否 | PostgreSQL 连接串格式 | postgresql://user:password@localhost:5432/octopus?sslmode=di |
如何确认成功
容器正常运行后,浏览器访问 http://localhost:8080 能打开 Web 管理面板即部署成功。
常见问题
Q:配置文件在哪里?需要自己创建吗?
A:默认位于 data/config.json,首次启动时会自动生成,一般不用手动创建。
Q:能用 MySQL 或 PostgreSQL 吗?
A:可以,把 database.type 改为 mysql 或 postgres,并填对应连接串。注意这两种数据库需你手动创建,表结构程序会自动建。
Q:端口被占用怎么办?
A:修改 config.json 中的 server.port,同时调整 docker run 的 -p 映射端口后重启容器。
Q:数据会丢吗?
A:只要把容器内 /app/data 挂载到宿主机目录(如 -v /path/to/data:/app/data),重启或升级容器数据都会保留。
注意事项
- Docker 部署务必挂载 /app/data,否则容器重建后配置与数据会丢失。
- 切换到 MySQL/PostgreSQL 前需自行创建空数据库,程序只自动建表结构。
- 修改 config.json 后需重启容器才会生效。
核心亮点
- 统一管理多家 LLM API 密钥,免去多平台切换烦恼
- 支持模型路由和负载均衡,可自定义优先级和故障转移
- 内置用量统计和费用追踪,帮助控制 API 成本
不足之处
- 文档/社区待观察
- 个人项目,企业级功能(如高可用、多租户)可能不完善
适用场景
- 个人开发者统一管理多个 AI 应用的后端模型调用
- 小团队内部搭建共享的 LLM 网关,集中管控密钥和预算
- 需要按模型或用户维度统计 API 用量和费用的场景
替代项目
LiteLLM、OpenRouter、one-api
上一篇:CPA-Manager-Plus
下一篇:APIPark
同类项目推荐
tiygate
开源
给 LLM 服务加个高可用保险,自动切换不宕机
TiyGate is a lightweight gateway for highly available LLM services. 一款致力于提供高···
helix-foundry
开源
把公司数据在本机连成一张关系网,随手查
Connect your company's data, let an agent draft an ontology over it, and load it int···
chromem-go
开源
Go 项目内嵌向量数据库,零依赖实现本地语义搜索
Embeddable vector database for Go with Chroma-like interface and zero third-party de···
SageAttention
开源
渲染提速好几倍,出片快人一步
[ICLR2025, ICML2025, NeurIPS2025 Spotlight] Quantized Attention achieves speedup of ···
vllm
开源
同一个模型跑出几倍速度,机器成本省一半
A high-throughput and memory-efficient inference and serving engine for LLMs
xvc
开源
用 Rust 快速管理 ML 数据和流水线,像 Git 一样追踪大文件
A robust () and fast () MLOps tool for managing data and pipelines in Rust ()
Recall
开源
切换 AI 助手,不丢历史记忆,本地搜索所有编码会话
Switch agents. Keep the history. Local-first search across your AI coding sessions.
pasllm
开源
在 Pascal 里跑大模型,让 Delphi/Lazarus 也能做 AI 对话。
PasLLM - LLM inference engine in Object Pascal (synced from my private work reposito···
agentplay
开源
把编码代理的会话回放成地图和时间线
Replay your coding agent sessions as a map and a timeline