部署一個flask項目踩過的坑

最近在部署一個flask項目,中間遇到的一些坑,記錄一下:

想用virutalenv來控制項目的環境,畢竟跟別人使用同一臺server,以免有衝突。這個時候就需要安裝一些依賴包的,就需要pip,但是默認是python 2.7的pip,這就比較扯淡了。嘗試了一下:

root@ubuntu:~/smtvenv$ pip3
-bash: pip3: command not found

沒有pip3,那就安裝,如下:

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下,正確的打開姿勢是:

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太老了,那就升級:

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啓動virtualenv

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.

進去虛擬環境

root@ubuntu:~/smtvenv$  cd ticket-kb/

激活虛擬環境:

root@ubuntu:~/smtvenv$  source bin/activate
(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$

可以看到,最前面多了一個括號和文件夾名字,這個就證明你已經在虛擬環境裏了。
(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$

查看一下python的版本:

(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$  python -V
Python 3.5.2

退出虛擬環境,只需要輸入deactivate即可,如下:

(ticket-kb) root@ubuntu:~/smtvenv/ticket-kb$  deactivate
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章