ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/var/project_env/bin/pip'

ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/var/project_env/bin/pip'

首先,我对设置虚拟环境还很陌生,所以我可以 运行 Python 休息 api 。 :)

我安装了虚拟环境。在我的 Ubuntu 服务器的 /var 文件夹中 sudo python3 -m venv project_env.

激活环境后,我尝试使用以下命令安装 Flask:(project_env) mStege@homeserver:/var$ pip install Flask

我收到这个错误:

ERROR: Could not install packages due to an EnvironmentError: 
[Errno 13] Permission denied: '/var/project_env/lib/python3.8/site-packages/itsdangerous-2.0.1.dist-info' Consider using the `--user` option or check the permissions.

经过一番研究,我尝试按照以下命令安装 Flask:pip3 install Flask --user 这给我这个错误:

ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.

和我安装虚拟环境的地方有关系吗? 我没有把它放在我的 homedir 中,因为 var 文件夹中有一个与项目相关的网站,我想把所有东西都放在一个地方。另外,我还会和其他一些人一起工作,我认为当他们必须通过我的主文件夹时,这是非常不理想的。

不要在 /var 中创建虚拟环境 (venv)。

我的建议:

  • 如果您使用 pip
  • ,请在源代码旁边创建虚拟环境
  • 如果您使用的是 pipenv,请让 pipenv 选择在何处创建 venv

您的每位同事都应该有自己的 venv。您可以使用 requirements.txt(或 Pipfile)指定需要哪些包和版本来同步您的环境。