尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

如何把 One API 部署到 Zeabur 平台并配置 MySQL 防止重新部署后数据丢失

如何把 One API 部署到 Zeabur 平台并配置 MySQL 防止重新部署后数据丢失 如何把 One API 部署到 Zeabur 平台并配置 MySQL 防止重新部署后数据丢失【免费下载链接】one-apiLLM API 管理 分发系统支持 OpenAI、Azure、Anthropic Claude、Google Gemini、DeepSeek、字节豆包、ChatGLM、文心一言、讯飞星火、通义千问、360 智脑、腾讯混元等主流模型统一 API 适配可用于 key 管理与二次分发。单可执行文件提供 Docker 镜像一键部署开箱即用。LLM API management key redistribution system, unifying multiple providers under a single API. Single binary, Docker-ready, with an English UI.项目地址: https://gitcode.com/GitHub_Trending/on/one-api如果你打算把 One API 托管到 Zeabur 这类云端平台会遇到一个实际问题不配置外部数据库时One API 使用内置的 SQLite 存储数据重新部署后数据会丢失。One API 官方文档README.md 的「部署到 Zeabur」一节给出的方案是在 Zeabur 上创建一个 MySQL 服务作为独立 Service通过环境变量SQL_DSN让 One API 连接它这样渠道、令牌、用户等数据都落在外部 MySQL 里重新部署不再丢数据。Zeabur 的服务器在国外文档提到它自动解决了网络问题免费额度也足够个人使用。下面按文档给出的操作顺序把 One API 部署到 Zeabur 并接上 MySQL。准备fork 仓库并进入 Zeabur 控制台Zeabur 部署 One API 走的是 Git 仓库方式而不是直接拉 Docker 镜像因此第一步需要先把 one-api 仓库 fork 一份后面在 Zeabur 里选择你 fork 的仓库来部署。然后登录 Zeabur 并进入控制台。在 Project 中添加 MySQL 服务并创建数据库新建一个 Project。在 Service - Add Service 中选择 Marketplace选择 MySQL并记下连接参数用户名、密码、地址、端口这四项就是后面拼SQL_DSN的原料。拷贝连接参数执行以下语句创建数据库create database one-api注意数据库名是one-api与后面SQL_DSN末尾的库名一致。文档没有要求手动建表——环境变量一节明确说明「无需手动建表程序将自动建表」One API 首次启动时会自行初始化。从 Git 仓库添加 One API 服务回到 Service - Add Service选择 Git第一次使用需要先授权选择你 fork 的 one-api 仓库。此时 Deploy 会自动开始先取消它因为还没有配置端口和数据库。配置 PORT 与 SQL_DSN 环境变量进入服务下方的 Variable 面板添加两个环境变量后保存变量值PORT3000SQL_DSNusername:passwordtcp(addr:port)/one-apiSQL_DSN中的username、password、addr、port需要替换为你在上一步 MySQL 服务里记下的用户名、密码、地址和端口。这是 MySQL 的 DSN 连接串格式README 环境变量一节给出的同格式示例是SQL_DSNroot:123456tcp(localhost:3306)/oneapi这一项直接决定标题里的问题能否解决文档明确提示「如果不填写SQL_DSN数据将无法持久化重新部署后数据会丢失」。SQL_DSN设置之后One API 使用指定数据库而非 SQLite渠道、令牌、用户数据全部写入外部 MySQL。重新部署并绑定域名保存变量后选择 Redeploy。进入下方的 Domains选择一个合适的域名前缀如my-one-api最终域名为my-one-api.zeabur.app也可以 CNAME 自己的域名。等待部署完成点击生成的域名即可进入 One API。验证部署结果打开生成的域名如my-one-api.zeabur.app能进入 One API 页面即为部署成功。使用初始账号登录用户名root密码123456。README 中有明确警告使用 root 用户初次登录系统后务必修改默认密码123456。登录后在「渠道」页面添加 API Key、在「令牌」页面生成访问令牌这些配置写入的是 MySQL 而非容器内 SQLite重新部署后依然保留。README 常见问题也确认使用 MySQL 时升级不会丢数据。限制说明本文路径仅覆盖 Zeabur 上的单实例部署。README「多机部署」一节要求所有服务器SESSION_SECRET一致、共用同一个 MySQL并从服务器设置NODE_TYPEslave那是另一套操作不在本文范围内。如果上游 MySQL 需要验证身份云数据库场景README 提到需要在连接参数中追加?tlsskip-verifyZeabur 内置 MySQL 是否必须如此文档未说明按默认流程执行连接报错时再参考这一项。【免费下载链接】one-apiLLM API 管理 分发系统支持 OpenAI、Azure、Anthropic Claude、Google Gemini、DeepSeek、字节豆包、ChatGLM、文心一言、讯飞星火、通义千问、360 智脑、腾讯混元等主流模型统一 API 适配可用于 key 管理与二次分发。单可执行文件提供 Docker 镜像一键部署开箱即用。LLM API management key redistribution system, unifying multiple providers under a single API. Single binary, Docker-ready, with an English UI.项目地址: https://gitcode.com/GitHub_Trending/on/one-api创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表