通过环境变量配置 pip 包的默认安装路径

最后发布时间 : 2026-08-17 18:32:54 浏览量 :

可以。pip 本身支持通过环境变量控制默认安装位置,主要看你希望实现哪一种。

1. 最推荐:使用 PYTHONUSERBASE

如果希望 pip install --user 默认安装到指定目录:

export PYTHONUSERBASE=/data/python
pip install --user bash_kernel

安装位置通常会变成:

/data/python/lib/python3.x/site-packages/

可查看:

python -m site --user-base
python -m site --user-site

例如:

$ PYTHONUSERBASE=/data/python python -m site --user-base
/data/python

$ PYTHONUSERBASE=/data/python python -m site --user-site
/data/python/lib/python3.12/site-packages

2. 如果希望 pip install xxx 不加 --user

可以使用 pipprefix 配置:

export PIP_PREFIX=/data/python
pip install bash_kernel

等价于:

pip install --prefix=/data/python bash_kernel

安装后通常:

/data/python/lib/python3.x/site-packages/
/data/python/bin/

查看:

pip config list

也可以永久配置:

pip config set global.prefix /data/python

3. 如果你是在 Docker / Jupyter 环境中

结合你前面配置 bash_kernel 的场景,我更推荐:

export PYTHONUSERBASE=/data/python
export PATH=/data/python/bin:$PATH
export PYTHONPATH=/data/python/lib/python3.12/site-packages:$PYTHONPATH

然后:

python -m pip install --user bash_kernel

检查:

python -m bash_kernel.install
jupyter kernelspec list

不过要注意:Jupyter kernel 的 kernelspec 和 Python 包安装目录是两个不同的问题

如果你的目标是让:

pip install bash_kernel
python -m bash_kernel.install

都统一安装到一个自定义目录,并且让 jupyter kernelspec list 能找到,我可以进一步给你一套适合 Docker/Jupyter 的完整环境变量配置