Centos 安装 Python Flask 跑通 MNN 的记录(无Docker版本)

  • 升级 python2.7.5 到 2.7.18
    • 1. 查看 centos 版本
    • 2. 查看 python 版本
    • 3. 下载 python 包
    • 4. 解压 python 包
    • 5. 配置环境
    • 6. 编译
    • 7. 备份老版本
    • 8. 链接新版本
    • 9. 修改yum 配置
    • 10. 安装 pip
  • 安装 Flask 环境
    • 1. 安装 virtualenv
    • 2. 在你的python项目根目录下创建虚拟环境
    • 3. 激活虚拟环境
    • 4. 安装 Flask
  • 下载项目依赖库
  • 启动 Flask 服务
  • Python requirements.txt
  • 查看python启动的服务

[TOC]

升级 python2.7.5 到 2.7.18

1. 查看 centos 版本

cat /etc/centos-release

2. 查看 python 版本

python -V

3. 下载 python 包

wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz

4. 解压 python 包

tar -xvzf Python-2.7.18.tgz

5. 配置环境

yum install gcc* openssl openssl-devel ncurses-devel.x86_64 bzip2-devel sqlite-devel python-devel zlib -y

6. 编译

cd Python-2.7.18
./configure --prefix=/usr/local
make
make altinstall

7. 备份老版本

mv /usr/bin/python /usr/bin/python2.7.5

8. 链接新版本

ln -s /usr/local/bin/python2.7 /usr/bin/python
python -V

9. 修改yum 配置

将文件首行的 #!/usr/bin/python 改为 #!/usr/bin/python2.7.5

vim /usr/bin/yum
vim /usr/libexec/urlgrabber-ext-down

10. 安装 pip

yum -y install python-pip

安装 Flask 环境

1. 安装 virtualenv

yum install -y python-virtualenv
如果失败则:
wget https://files.pythonhosted.org/packages/33/bc/fa0b5347139cd9564f0d44ebd2b147ac97c36b2403943dbee8a25fd74012/virtualenv-16.0.0.tar.gz
tar zxvf virtualenv-16.0.0.tar.gz
cd virtualenv-16.0.0
python setup.py install

2. 在你的python项目根目录下创建虚拟环境

python -m virtualenv venv

3. 激活虚拟环境

. venv/bin/activate

4. 安装 Flask

pip install Flask

下载项目依赖库

python -m pip install --upgrade pip
python -m pip install --upgrade setuptools
pip install cffi
pip install botocore==1.18.17
pip install Pillow
yun install python-qt4
pip install Cython
yum install openssl
pip install pyrsistent==0.16.1
pip install MNN==1.1.3
pip install pandas==0.24.2
pip install botocore==1.18.17
pip install MNNCV==0.1.12
pip install -r requirements.txt

如果报错: ImportError: libSM.so.6: cannot open shared object file: No such file or directory 之类的说明缺少共享库
查看缺少的什么库,并进行安装:

yum whatprovides libSM.so.6
sudo yum install libSM-1.2.2-2.el7.x86_64 --setopt=protected_multilib=false

启动 Flask 服务

#start.py
from flask import Flask

app = Flask(__name__) 

@app.route('/')
def hello():
    return 'hello docker&flask'

if __name__ == '__main__':
    app.run(debug=True)

pip install gunicorn gevent
在根目录下新建文件 /gunicorn.conf.py

workers = 5    # 定义同时开启的处理请求的进程数量,根据网站流量适当调整
worker_class = "gevent"   # 采用gevent库,支持异步处理请求,提高吞吐量
bind = "0.0.0.0:80"

启动:

gunicorn start:app -c gunicorn.conf.py

Python requirements.txt

导出:

pip freeze >requirements.txt

安装依赖:

pip install -r requirement.txt

查看python启动的服务

ps -ef| grep python

杀掉服务:

kill 28561

启动服务的时候将log记录到本地:

gunicorn start:app -c gunicorn.conf.py > log.log

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章