最近在部署一個flask項目,中間遇到的一些坑,記錄一下:python
想用virutalenv來控制項目的環境,畢竟跟別人使用同一臺server,以避免有衝突。這個時候就須要安裝一些依賴包的,就須要pip,可是默認是python 2.7的pip,這就比較扯淡了。嘗試了一下:flask
root@ubuntu:~/smtvenv$ pip3 -bash: pip3: command not found
沒有pip3,那就安裝,以下:ubuntu
root@ubuntu:~/smtvenv$ sudo apt-get install pip3 Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package pip3
說找不到這個叫pip3的包,查了一下,原來安裝姿式不對。python3下,正確的打開姿式是:bash
root@ubuntu:~/smtvenv$ sudo apt-get install python3-pip Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: libpython3-dev libpython3.5-dev python3-dev python3-setuptools python3-wheel python3.5-dev Suggested packages: python-setuptools-doc The following NEW packages will be installed: libpython3-dev libpython3.5-dev python3-dev python3-pip python3-setuptools python3-wheel python3.5-dev 0 upgraded, 7 newly installed, 0 to remove and 95 not upgraded. Need to get 38.0 MB of archives. After this operation, 55.2 MB of additional disk space will be used. Do you want to continue? [Y/n]
root@ubuntu:~/smtvenv$ pip3 install virtualenv Collecting virtualenv Downloading https://files.pythonhosted.org/packages/5e/6a/fa7e7f533595402040c831500bb10576e1f4b8f54d476f3994c7c55d8f5e/virtualenv-16.7.3-py2.py3-none-any.whl (3.3MB) 100% |████████████████████████████████| 3.3MB 551kB/s Installing collected packages: virtualenv Successfully installed virtualenv You are using pip version 8.1.1, however version 19.2.2 is available. You should consider upgrading via the 'pip install --upgrade pip' command.
提示說pip version太老了,那就升級:ide
root@ubuntu:~/smtvenv$ pip3 install --upgrade pip Collecting pip Downloading https://files.pythonhosted.org/packages/8d/07/f7d7ced2f97ca3098c16565efbe6b15fafcba53e8d9bdb431e09140514b0/pip-19.2.2-py2.py3-none-any.whl (1.4MB) 100% |████████████████████████████████| 1.4MB 1.2MB/s Installing collected packages: pip Successfully installed pip-19.2.2
配置使用python3啓動virtualenvui
root@ubuntu:~/smtvenv$ virtualenv -p /usr/bin/python3 ticket-kb Running virtualenv with interpreter /usr/bin/python3 Already using interpreter /usr/bin/python3 Using base prefix '/usr' New python executable in /home/jbe1szh/smtvenv/ticket-kb/bin/python3 Also creating executable in /home/jbe1szh/smtvenv/ticket-kb/bin/python Installing setuptools, pip, wheel... done.
進去虛擬環境this
root@ubuntu:~/smtvenv$ cd ticket-kb/
激活虛擬環境:spa
root@ubuntu:~/smtvenv$ source bin/activate (ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$
能夠看到,最前面多了一個括號和文件夾名字,這個就證實你已經在虛擬環境裏了。
(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$code
查看一下python的版本:orm
(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$ python -V Python 3.5.2
退出虛擬環境,只須要輸入deactivate便可,以下:
(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$ deactivate