admin管理员组

文章数量:1122850

1.服务器上用virtualenv构建一个空间,并激活环境

#命令
pip install virtualenv  #安装虚拟工具包
mkdir project
cd project
virtualenv venvtf   #创建venvtf虚拟环境
source venvtf/Scripts/activate      # venvtf是虚拟环境名,linux下用venvtf\bin/active 

2、把本地工程的tar包目录导出下:pip freeze >requirements.txt

      你引用的python包安装到这个环境

pip install -i https://pypi.doubanio/simple/ -r requirements.txt

如果pip命令不识别,需要安装pip:命令:python get-pip.py

3、把你本地的python 打个jar

在项目根目录创建setup.py文件:放以下内容:

from setuptools import setup, find_packages

setup(name="pipe-smart", version="0.1.0", packages=find_packages(), zip_safe=False, description="pipe-smart",
      long_description="pipe-smart", author="abc", author_email="abc@qq", license="GPL",
      keywords=("test", "pipe"), platforms="Independant", url="", )

4.用Tornado作为flask App的WSGI容器(gunicorn 对win支持不太好)

在项目根目录创建server.py文件:放以下内容:

from tornado.httpserver import HTTPServer
from tornado.wsgi import WSGIContainer
from pipe.app import app
from tornado.ioloop import IOLoop

s = HTTPServer(WSGIContainer(app))
s.listen(9900) # 监听 9900 端口
IOLoop.current().start()

5.项目打包

在setup.py文件目录下,执行命令:python setup.py sdist 会生成安装包pipe-smart-0.1.0.tar.gz

4、安装到这个环境

将安装包拷贝到你想安装的地方,执行命令:easy_install pipe-smart-0.1.0.tar.gz

5、启动/发布

(1)gunicorn启动(win 不太支持,如果支持步骤4不需要)

命令:pip install gunicorn

启动: gunicorn -w4 -b0.0.0.0:8888 app:app

(2)Tornado启动(命令模式)

命令:python server.py(当安装包安装在python环境下lib下,执行绝对路径或者进入目录执行命令都可以)

(2)Tornado启动(bat模式)

建立bat文件

if "%1"=="hide" goto CmdBegin
start mshta vbscript:createobject("wscript.shell").run("""%~0"" hide",0)(window.close)&&exit
:CmdBegin


@echo off
cd\
C:
cd  "\ProgramData\Anaconda3\Lib\site-packages\pipe_smart-0.1.0-py3.7.egg\pipe"
start python server.py
exit

点击运行即可,前三行是后台运行模式。

6.访问项目

6.常见问题:

gunicorn启动问题:

ModuleNotFoundError: No module named 'fcntl'

ModuleNotFoundError: No module named 'pwd'

解决:Tornado启动。

本文标签: 服务器项目flask