先说下大体上的做法,开发环境上要新弄一个 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应用,就完成了。
    如果发现有报模块不存在,没引入的错,可以直接单独安装一下它。

centos上发布部署python的tornado网站项目完整流程的更多相关文章

  1. 最新JetBrainsPyCharm自动部署Python(Django,tornado等)项目至远程服务器

    每次开发Python项目时,对于所有Python开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP ...

  2. Python+CGI,在Windows上快速部署Python到IIS

    通过CGI,我们可以快速在Windows上部署Python 1. Windows安装IIS服务 2. 在IIS里打开“ISAPI和CGI限制”->添加,路径=python.exe的完全路径+&q ...

  3. CentOS 7.6部署Vue + SrpingBoot + MySQL单体项目

    对于独立的项目(前端.后台单体服务.数据库),部署到新服务器上时,常常需要繁琐的配置与环境安装,这里介绍Centos 7.6下如何搭建基于Docker的环境,以及如何使用docker部署一套Vue + ...

  4. [原创] Go语言在Centos上的部署

    序言 Golang是个好东西啊.部署非常简单,对于运维人员来说太爽了. 传统的Nginx啊Apache啊,外加PHP以及各个插件啊搞得头晕. 用了Go之后就什么都不需要了.只要把生成好的文件向服务器上 ...

  5. CentOS上手工部署kubernetes集群

    本文完全是根据二进制部署kubernets集群的所有步骤,同时开启了集群的TLS安全认证. 环境说明 在下面的步骤中,我们将在三台CentOS系统的物理机上部署具有三个节点的kubernetes1.7 ...

  6. RAP在centos上的部署

    在centos7上部署RAP(非官方) 作者批注:该部署文档为网友贡献,仅供参考.war请参考主页README.md下载最新版本哟~~~ 感谢热情网友的Wiki整理!万分感谢! 系统: centos7 ...

  7. 在CentOS上安装部署MooseFS分布式文件系统

    参考资料: http://www.moosefs.org/tl_files/manpageszip/moosefs-step-by-step-tutorial-cn-v.1.1.pdf 环境介绍:OS ...

  8. 在windows环境下部署nuxt项目(线上发布部署)

    因为公司项目需要兼容SEO,同时我们也一直希望能够真正的实现前后端分离,于是毫不犹豫的选择了nuxt. 话说要重构前后端分离真是一个大工程,由于各种原因我们团队花了近两年时间都没有完成,最近才又重启把 ...

  9. linux 上安装部署python

    一般在linux中使用python 需要安装pyenv 进行版本控制 因为linux6.9自带的Python是2.6的 同时很多命令都是基于2.6开发的 所以系统环境不能改 我们要开发 只能用pyen ...

随机推荐

  1. 【redis】-- springboot集成redis及使用

    springboot自动配置的redis并不是特别好用,所以需要我们使用原生的jedis, 1.添加依赖 2.在application文件中配置 # Redis服务器地址 redis.host= # ...

  2. SpringCloud教程 | 第四篇:断路器(Hystrix)

    在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用.为了保证其高可用,单个服务 ...

  3. linux(ubuntu) 安装composer(PHP用来管理依赖关系的工具 ) 和安装中国全量镜像

    https://www.phpcomposer.com/  composer中文网 1:进入安装目录   cd /usr/local/bin 2:下载并安装     sudo curl -s http ...

  4. C语言面对对象设计模式汇编

    面向对象发展到今天,已经出现了许许多多优秀的实践.方法和技术.很多的技术都能够有效的提高软件质量.IBM上的<面向对象软件开发和过程>系列文章对面对对象设计从如下层面进行了详细的介绍:代码 ...

  5. 阿里云 Windows 2012 如果安装IIS

    用可视化安装如果出错, 那就用 windows powershell 安装 https://help.aliyun.com/knowledge_detail/40959.html?spm=5176.1 ...

  6. myeclipse使用git图文教程

    Git介绍与使用 1.什么是Git Git是分布式版本控制系统 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 2.集中式版本控制系统(CVS / SVN等) 集中 ...

  7. javaweb中的文件上传的一般写法(初次接触时写)

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1. 通过form表单向后端发送请求 <form id=&quo ...

  8. 超小Web手势库AlloyFinger原理(转载)

    目前AlloyFinger作为腾讯手机QQ web手势解决方案,在各大项目中都发挥着作用. 感兴趣的同学可以去Github看看: https://github.com/AlloyTeam/AlloyF ...

  9. Java演算法-「雞兔同籠問題」

    /** * 雞兔同籠問題:窮舉算法思想 */ import java.util.*; public class ChichenAndHabbit { static int chichenNum,hab ...

  10. connection reset by peer

    connection reset by peer https 请求返回下面的内容 {"msg":"connection reset by peer"," ...