如何用 uv 安装 Odysseus 依赖并生成 requirements.lock 锁定可复现版本

发布时间:2026/9/9 14:14:02
如何用 uv 安装 Odysseus 依赖并生成 requirements.lock 锁定可复现版本 如何用 uv 安装 Odysseus 依赖并生成 requirements.lock 锁定可复现版本【免费下载链接】odysseusSelf-hosted AI workspace.项目地址: https://gitcode.com/gh_mirrors/ody/odysseus如果你不用 Docker 而是在 Linux 或 macOS 上原生安装 Odysseus会遇到一个版本问题requirements.txt 是有意不锁版本的docs/setup.md 明确指出两个不同时间的安装可能产生不同的包版本。uv 可以整体替代原生安装指南中的 venv pip 步骤不需要改动项目任何文件安装速度更快并且能生成一个 lockfile 用于复现环境——比如在自己的多台机器之间复制同一套依赖或者在一次失败的升级后回滚。本文按 docs/setup.md 中 Faster, reproducible installs with uv 一节的路径走完整流程。适用场景与前提走的是原生非 Docker安装路径。Docker 安装由 Compose 构建镜像不走 venv pip 这一步。原生安装要求 Python 3.11。下文示例沿用文档命令用--python 3.13创建虚拟环境。先按 uv 官方安装文档装好 uvsetup 文档在给出下面的命令前即以此为前提。已 clone 仓库后续命令都在项目根目录执行。用 uv 替代 venv pip 安装依赖uv venv venv --python 3.13 source venv/bin/activate uv pip install -r requirements.txt三条命令的分工uv venv venv --python 3.13替代原生指南里的python3 -m venv venv在当前目录的venv目录下建虚拟环境并指定 Python 3.13uv pip install -r requirements.txt替代对应的pip install按 requirements.txt 安装全部核心依赖。中间的source venv/bin/activate是原生指南里的激活步骤——uv 文档只写了装完后按常规继续python setup.py、uvicorn 等而后续的python setup.py必须使用虚拟环境里的解释器所以这一步照原样保留。生成 requirements.lock 快照uv pip compile对 requirements.txt 做一次完整解析把当前解析出的精确版本写进 lock 文件uv pip compile requirements.txt -o requirements.lock # snapshot current resolution这一步把这次装到了什么版本固定下来。文档强调 lockfile 是平台相关的platform-specific在哪台操作系统上部署就在哪台系统上执行 compile不要拿一台机器的 lock 文件去另一类系统上使用。用 requirements.lock 复现或回滚环境之后要恢复同一套依赖文档措辞是 reproduce it exactly lateruv pip sync requirements.lock文档给出的两个典型用途在自己的多台机器之间复制同一环境一次升级出问题后回滚到 lock 记录的版本。注意一个边界普通的uv pip install -r requirements.txt和 pip 一样继续跟随未锁定的 requirements.txt不会读 lock 文件。lock 只通过uv pip sync生效所以日常装依赖和精确复现是两条不同的命令。继续原生安装并验证启动依赖装好后按原生指南的剩余步骤走python setup.py python -m uvicorn app:app --host 127.0.0.1 --port 7000然后浏览器打开http://localhost:7000。首次启动时 Odysseus 会创建管理员账号默认用户名为admin可用ODYSSEUS_ADMIN_USER覆盖并在终端打印一个临时密码。用该密码完成首次登录随后在Settings里改掉它——这就是安装链路完成的判断依据。requirements.lock 的管理边界不进 Gitrequirements.lock已被 gitignore见 .gitignore它是每台机器自己的产物不会被提交。平台相关在你要部署的操作系统上编译它换 OS 就要重新生成。升级靠主动重新生成当你确实想接受新依赖版本时故意重新执行uv pip compile生成新的 lock 文件而不是期望 lock 自动跟进上游变化。适用范围这条 uv 路径只是原生安装指南中 venv pip 步骤的替代不改变 Docker 安装流程也不涉及requirements-optional.txt可选功能依赖默认不安装。至此你得到两条可复用的能力uv pip install -r requirements.txt保持跟随最新解析的灵活安装requirements.lockuv pip sync提供随时可以精确回放的版本快照。【免费下载链接】odysseusSelf-hosted AI workspace.项目地址: https://gitcode.com/gh_mirrors/ody/odysseus创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询