uv的环境变量
📅 2025-03-27 | 🖱️
🔖 python
uv的文档“Environment variables”中详细的给出了uv自己定义使用的和uv遵循使用的环境变量。
这里记录几个个人平时经常使用的。
UV_DEFAULT_INDEX
#
相当于命令行参数--default-index
。如果设置了该环境变量,uv 在搜索软件包时将使用此 URL 作为默认索引。
一般在使用uv tool
安装工具时使用它。例如:
1export UV_DEFAULT_INDEX=https://mirrors.aliyun.com/pypi/simple
2uv tool install --python 3.12 -v s3cmd
s3cmd
被安装在~/.local/share/uv/tools/s3cmd
目录中。同时创建了~/.local/bin/s3cmd
到~/.local/share/uv/tools/s3cmd/bin/s3cmd
的软连接。
UV_INDEX_{name}_USERNAME
和UV_INDEX_{name}_PASSWORD
#
UV_INDEX_{name}_USERNAME
为指定名称的索引提供HTTP基本认证所需的用户名。其中,name
是该索引的名称。例如,如果索引名为foo
,则对应的环境变量键应为UV_INDEX_FOO_USERNAME
。
UV_INDEX_{name}_PASSWORD
为指定名称的索引提供HTTP基本认证所需的密码。其中,name
是该索引的名称。例如,如果索引名为foo
,则对应的环境变量键应为UV_INDEX_FOO_PASSWORD
。
默认情况下,uv使用PyPI进行依赖解析和包安装。可以通过 pyproject.toml
文件中的 [[tool.uv.index]]
配置选项(或命令行参数 --index
)来使用其他包索引源,包括私有源。
这对于需要使用公司内部私有包仓库或者国内镜像源的用户来说非常实用。
1[[tool.uv.index]]
2name = "private-pypi"
3# url = "https://mirrors.aliyun.com/pypi/simple/"
4url = "https://pypi.example.com/repository/pypi-public/simple"
5default = true
如果指定的pypi是私有仓库,并且开启了认证,可以使用这2个环境变量为私有pypi指定用户名和密码。这对于在做持续集成CI配置时十分有用。
1export UV_INDEX_PRIVATE_PYPI_USERNAME=username
2export UV_INDEX_PRIVATE_PYPI_PASSWORD=password