一个用 Rust 编写的超快速 Python 包和项目管理器。
使用预热缓存安装 Trio 的依赖项。
pip、pip-tools、pipx、poetry、pyenv、twine、virtualenv 等多个工具。pip https://github.com/astral-sh/uv/blob/main/BENCHMARKS.md%E3%80%82curl 或 pip 安装。uv 由 Astral 开发支持,该团队同时创建了 https://github.com/astral-sh/ruff 和 https://github.com/astral-sh/ty%E3%80%82
使用独立安装程序安装 uv:
# 在 macOS 和 Linux 上。
curl -LsSf https://astral.sh/uv/install.sh | sh
# 在 Windows 上。
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
或者,从 PyPI 安装:
# 使用 pip。
pip install uv
# 或使用 pipx。
pipx install uv
如果通过独立安装程序安装,uv 可自行更新到最新版本:
uv self update
有关详细信息和替代安装方法,请参阅 安装文档。
uv 的文档可在 docs.astral.sh/uv 获取。
此外,命令行参考文档可通过 uv help 查看。
uv 管理项目依赖和环境,支持锁文件、工作区等功能,类似于 rye 或 poetry:
$ uv init example
已在 `/home/user/example` 初始化项目 `example`
$ cd example
$ uv add ruff
正在 .venv 创建虚拟环境
已解析 2 个包,耗时 170ms
已构建 example @ file:///home/user/example
已准备 2 个包,耗时 627ms
已安装 2 个包,耗时 1ms
+ example==0.1.0 (来自 file:///home/user/example)
+ ruff==0.5.0
$ uv run ruff check
所有检查通过!
$ uv lock
已解析 2 个包,耗时 0.33ms
$ uv sync
已解析 2 个包,耗时 0.70ms
已检查 1 个包,耗时 0.02ms
请参阅 项目文档 开始使用。
uv 还支持构建和发布项目,即使项目未使用 uv 管理。请参阅 发布指南 了解更多信息。
uv 为单文件脚本管理依赖和环境。
创建新脚本并添加声明依赖项的内联元数据:
$ echo 'import requests; print(requests.get("https://astral.sh"))'
> example.py
$ uv add --script example.py requests
已更新 `example.py`
然后,在隔离的虚拟环境中运行脚本:
$ uv run example.py
从 example.py 读取内联脚本元数据
已安装 5 个包,耗时 12ms
请参阅 脚本文档 开始使用。
uv 执行和安装 Python 包提供的命令行工具,类似于 pipx。
使用 uvx(uv tool run 的别名)在临时环境中运行工具:
$ uvx pycowsay 'hello world!'
已解析 1 个包,耗时 167ms
已安装 1 个包,耗时 9ms
+ pycowsay==0.0.0.2
"""
------------
------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
使用 uv tool install 安装工具:
$ uv tool install ruff
已解析 1 个包,耗时 6ms
已安装 1 个包,耗时 2ms
+ ruff==0.5.0
已安装 1 个可执行文件:ruff
$ ruff --version
ruff 0.5.0
请参阅 工具文档 开始使用。
uv 安装 Python 并允许快速切换版本。
安装多个 Python 版本:
$ uv python install 3.12 3.13 3.14
已安装 3 个版本,耗时 972ms
+ cpython-3.12.12-macos-aarch64-none (python3.12)
+ cpython-3.13.9-macos-aarch64-none (python3.13)
+ cpython-3.14.0-macos-aarch64-none (python3.14)
按需下载 Python 版本:
$ uv venv --python 3.12.0
使用 Python 3.12.0
在 .venv 创建虚拟环境
激活方式:source .venv/bin/activate
$ uv run --python pypy@3.8 -- python --version
Python 3.8.16 (a9dbdca6fc3286b0addd2240f11d97d8e8de187a, Dec 29 2022, 11:45:30)
[PyPy 7.3.11 with GCC Apple LLVM 13.1.6 (clang-1316.0.21.2.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>>
在当前目录使用特定 Python 版本:
$ uv python pin 3.11
已将 `.python-version` 固定为 `3.11`
请参阅 Python 安装文档 开始使用。
uv 提供对常见 pip、pip-tools 和 virtualenv 命令的无缝替代。
uv 通过高级功能扩展其接口,例如依赖版本覆盖、平台无关解析、可重现解析、替代解析策略等。
通过 uv pip 接口迁移到 uv,无需更改现有工作流,即可获得 10-100 倍的速度提升。
将需求编译为平台无关的需求文件:
$ uv pip compile requirements.in \
--universal \
--output-file requirements.txt
已解析 43 个包,耗时 12ms
创建虚拟环境:
$ uv venv
使用 Python 3.12.3
在 .venv 创建虚拟环境
激活方式:source .venv/bin/activate
安装锁定的需求:
$ uv pip sync requirements.txt
已解析 43 个包,耗时 11ms
已安装 43 个包,耗时 208ms
+ babel==2.15.0
+ black==24.4.2
+ certifi==2024.7.4
...
请参阅 pip 接口文档 开始使用。
我们热衷于支持各种经验水平的贡献者,非常欢迎您参与到项目中来。请参阅https://github.com/astral-sh/uv?tab=contributing-ov-file#contributing%E4%BB%A5%E5%BC%80%E5%A7%8B%E3%80%82
发音为“you - vee”(音标 /juː viː/)
请使用“uv”。详见风格指南。
请参阅 uv 的平台支持文档。
是的,uv 稳定且已在生产环境中广泛使用。详见 uv 的版本控制策略文档。
uv 的依赖解析器底层使用 https://github.com/pubgrub-rs/pubgrub%E3%80%82%E6%88%91%E4%BB%AC%E6%84%9F%E8%B0%A2 PubGrub 维护者,特别是 https://github.com/Eh2406 的支持。
uv 的 Git 实现基于 https://github.com/rust-lang/cargo%E3%80%82
uv 的部分优化灵感来自 pnpm、https://github.com/orogene/orogene 和 https://github.com/oven-sh/bun 的出色工作。我们还从 Nathaniel J. Smith 的 https://github.com/njsmith/posy 中学到了很多,并改编了其https://github.com/njsmith/posy/tree/main/src/trampolines/windows-trampolines/posy-trampoline%E4%BB%A5%E6%94%AF%E6%8C%81 Windows。
uv 采用以下任一许可证授权:
您可以选择任一许可证。
除非您明确声明,否则您有意提交用于包含在 uv 中的任何贡献,如 Apache-2.0 许可证所定义,应按上述方式双重授权,不附加任何额外条款或条件。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务