如何在Linux环境下通过uwgsi部署Python服务

部署python程序时常常会遇到同一台服务器上2.x和3.x共存的情况,不同应用需要使用不用的python版本,使用virtualenv创建虚拟环境能很好地解决这一问题。

首先,需要在服务器上安装virtualenv,命令如下:

sudo yum install python-virtualenv

系统会自动下载依赖项目,如下图,安装已经成功了:

如何在Linux环境下通过uwgsi部署Python服务如何在Linux环境下通过uwgsi部署Python服务

接下来需要创建虚拟环境,我们需要python3.6版本:

virtualenv -p /usr/local/bin/python3.6 python3.6

如何在Linux环境下通过uwgsi部署Python服务如何在Linux环境下通过uwgsi部署Python服务

创建好虚拟环境时,virtualenv会帮我们把pip等工具也安装好。下面测试一下我们创建的虚拟环境:

/root/venv/python3.6/bin/python3.6 -V

python已经安装成功了,由于我们发布站点,需要借助uwsgi,下面来安装uwsgi:

/root/venv/python3.6/bin/pip install uwsgi

如何在Linux环境下通过uwgsi部署Python服务如何在Linux环境下通过uwgsi部署Python服务

好了,uwsgi也安装成功了,下面就可以启动我们的站点了,uwsgi配置如下:

[uwsgi]
http = 0.0.0.0:7013
processes = 1
master = true
pythonpath = /usr/local/WordVecServiceCommon
chdir = /usr/local/WordVecServiceCommon
module = WordVecService.service
callable = app
memory-report = true
daemonize = /usr/local/WordVecServiceCommon/logs/uwsgi.log
touch-reload = /usr/local/WordVecServiceCommon/wsgi.txt

启动服务:

/root/venv/python3.6/bin/uwsgi --ini uwsgi_conf.ini

通过/logs/uwsgi.log日志文件查看启动情况:

如何在Linux环境下通过uwgsi部署Python服务如何在Linux环境下通过uwgsi部署Python服务

好了,服务已经启动成功了,我们通过postman测试一下是否能够正常访问。

原文地址:https://www.cnblogs.com/linuxprobe-sarah/p/9933232.html