文档章节

centos上发布部署python的tornado网站项目完整流程

o
 osc_a22drz29
发布于 2019/03/22 12:13
字数 718
阅读 3
收藏 0

精选30+云产品,助力企业轻松上云!>>>

先说下大体上的做法,开发环境上要新弄一个 virtualenv的环境,在这个里面放你的开发调试,当然这个其实也不是必须的,但是这样会方便管理一些。

再在centos上也弄一个 virtualenv虚拟环境。然后把开发环境上的代码传到centos,开启虚拟环境,拉引入的库,就可以启动了。如果有好方法管理你程序里的引用库,

最前面的步骤也可以不做,直接在IDE比如pychorm里开发就行了。

 

这里还是按Windows也弄一个 virtualenv环境的开始写。

  • 开发环境:Windows7(8/10应该一样)、python3.6、tornado(版本号不是很敏感)
  1. 安装 pip install virtualenv


  2. 检测安装(选)  virtualenv --version

     

  3. 创建虚拟环境工作空间 virtualenv venv
    后面这个venv参数是空间名。

     

  4. 启用空间 venv\Scripts\activate

    补充一下退出是 deactivate.bat

  5. 把你整个python项目粘一份到Scripts里,创建好空间后,你启动cmd位置的目录会有对应名字(如这里venv)文件夹。

     

  6. 安装基础依赖
    pip install requirements
    pip install tornado
  7. 用一个文本记录程序的依赖(这就是在这个目录下编辑你的程序的方便的地方)
    pip freeze > requirements.txt   # 此命令就把你所有的依赖包名和版本号保存到了这个txt文件内
  8. 进入你的程序目录的启动文件目录,可以试试在这里启动程序了。
    如我这里启动程序是main.py,那么python main.py

 

  •  部署到centos环境
    [centos7、其他同开发环境]
  1. 先安装特殊依赖 yum install zlib zlib-devel openssl openssl-devel -y


  2. 下载安装python3.6
    wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

    进入到下载目录后解压
    tar xvJf Python-3.6.2.tar.xz -C /usr/local

    进到解压后目录cd /usr/local后执行编译
    ./configure && make && make install

    然后建立软连接

    ln -s /usr/local/bin/python3.6 /usr/bin/python3

    ln -s /usr/local/bin/pip /usr/bin/pip3

  3. 对应开发环境教程,安装virtualenv等,并创建空间,启用空间。
    安装:
    pip3 install virtualenv
    pip3 install tornado
    pip3 install requirements

    创建空间:virtualenv venv1
    启用空间:source venv1/bin/activate

  4. 把你的程序代码上传到空间里。这个就用刚在开发环境粘进去的项目文件就行,里面已经带了requirements.txt。
  5. 安装项目依赖:pip install -r requirements.txt
    这里可能会有些包报错,有些东西修改一下版本号也问题不大的。安不下去的可以试试。并且格式只能是[包名 版本号]的格式。

  6. 进入项目路径,试试直接启动py应用,就完成了。
    如果发现有报模块不存在,没引入的错,可以直接单独安装一下它。

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。

暂无文章

Pycharm文件打开方式

Pycharm修改文件默认打开方式 新下载了一个Pycharm,建了个小demo,期间产生了一个sqlite3文件,由于是第一次打开,就弹出选择打开方式的对话框,手一块直接点了个Text,然后就乱码了: 那我...

osc_fi9eaftu
23分钟前
8
0
微信域名检测中反应速度的重要性

随着微信域名检测的普及,越来越多的人重视这方面有个客户是这样跟我说的,他现在用的那个检测有频率限制 最快只能一秒检测一个, 并发多的时候是不能边跳转边检测的, 只能写到计划任务里面...

mkapi01
24分钟前
18
0
状压dp大总结1 [洛谷]

前言 状态压缩是一种\(dp\)里的暴力,但是非常优秀,状态的转移,方程的转移和定义都是状压\(dp\)的难点,本人在次总结状压dp的几个题型和例题,便于自己以后理解分析状态和定义方式 状态压缩...

osc_s28jz759
25分钟前
17
0
aspnet core 2.1中使用jwt从原理到精通一

目录 原理; 根据原理使用C#语言,生成jwt; 自定义验证jwt; 使用aspnetcore 中自带的类生成jwt; 学有所得 了解jwt原理; 使用C#轻松实现jwt生成和验证 原理 jwt对所有语言都是通用的,只要...

osc_1ls4yaq1
26分钟前
6
0
github上DQN代码的环境搭建,及运行(Human-Level Control through Deep Reinforcement Learning)conda配置

最近师弟在做DQN的实验,由于是强化学习方面的东西,正好和我现在的研究方向一样于是我便帮忙跑了跑实验,于是就有了今天的这个内容。 首先在github上进行搜寻,如下图: 发现第一个星数最多...

osc_252iaxru
27分钟前
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部