virtualenv 在数字海洋的 ubuntu 18.04 服务器上失败

virtualenv fails on digital ocean's ubuntu 18.04 server

我正在通过 SSH 在 digital ocean 的 ubuntu 服务器 18.04 上部署 django 应用程序,但遇到错误:

The path python2 (from --python=python2) does not exist

这些是我已经完成的步骤,它来自 https://www.digitalocean.com/community/tutorials/how-to-install-django-and-set-up-a-development-environment-on-ubuntu-16-04

*** System restart required ***
Last login: Fri Sep 27 10:02:52 2019 from 112.207.104.140
root@pw-proj-apc:~# sudo apt-get install python3
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python3 is already the newest version (3.6.7-1~18.04).
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
root@pw-proj-apc:~# python3 -V
Python 3.6.8
root@pw-proj-apc:~# sudo apt-get install -y python3-pip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python3-pip is already the newest version (9.0.1-2.3~ubuntu1.18.04.1).
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
root@pw-proj-apc:~# pip3 -V
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)
root@pw-proj-apc:~# pip3 install virtualenv
Requirement already satisfied: virtualenv in /usr/lib/python3/dist- 
packages
root@pw-proj-apc:~# virtualenv --version
15.1.0
root@pw-proj-apc:~# cd myproject
root@pw-proj-apc:~/myproject# virtualenv env
The path python2 (from --python=python2) does not exist
root@pw-proj-apc:~/myproject# 

我错过了什么?

首先,使用 which python 查看你的 python 二进制文件在哪里,这样你就可以执行并验证系统正在使用哪个版本的 python。

但是,我敢打赌 --python=python 会设置为 python2

你可以告诉 virtualenv 使用 Python 3 和 virtualenv -p python3 env

但是,您根本不必安装 virtualenv。从 Python 3.5 开始,推荐的创建 virtualenv 的方法是:

python3 -m venv env

使用 python3 -m venv 的优点是它使用与 python3 相同的 python。