详细描述一次最新Heroku部署python web项目的完整过程

原创 2017年01月03日 16:47:48

最近刚敲完一个flask web方面的博客项目,一路走来,断断续续吧,都是利用业余时间学习加上操练来的,工作不忙的时候,就晚上回来练习,从笨方法一书敲起,工作忙的时候,这块就被搁置了,但是自己内心还是没有忘记它,一旦有空的时候,就去把它捡起来接着学习,今天算是操练到狗书的最后一节部署,通过部署的过程,我也记录了下,分享给学习狗书的后来者。

1. Heroku云平台:

当我们在本地撸完一个Web App的项目的时候,这个时候是该我们选择一个可信赖的平台托管,这里
推荐使用Heroku平台,为什么推荐这款云产品呢?因为免费呢!!!免费提供一定大小的数据库存储。
如果我们仅仅是用来线上测试国内的产品,建议可以先拿它做下测试。

2.准备工作:


    注册Heroku用户 : http://heroku.com
    heroku toolbelt下载:https://toolbelt.heroku.com/

3.安装toolbelt:

因为这里我使用的是win10系统,如果本地之前装过Git,建议安装此toolbelt软件的时候在第一步
的时候就去掉勾选安装Git选项,如果本地没有安装过Git可以忽略此提示。因为安装的时候,它会帮你安
装一个版本的Git。

4.建立一个文件project:


    a)我们把准备好的web app项目整体搬到刚刚新建的project目录

    b)我们用git shell工具在进入cd project目录下,执行git init命令

    c)在project目录下我们执行heroku login,这个时候我们输入注册用户时候填写的用户名和密码
      即可,它在登录的过程中会把本地的ssh公钥自动上传。

    d)执行heroku create <appname> 命令,<appname> 代表的是自己想创建的名称,例     如:heroku create prosperdai  我们就创建了一个prosperdai工程应用。

    e)执行heroku git:remote -a prosperdai

5.创建数据库:


    a)执行heroku addons:create heroku-postgresql:hobby-dev --app **prosperdai**

    后面的**prosperdai**就是我们创建的项目名称,修改成自己刚刚创建的name就行

    **创建数据库成功后会提示**:
    Creating heroku-postgresql:hobby-dev on shidai... free  
    Database has been created and is available  
    ! This database is empty. If upgrading, you can transfer
    ! data from another database with pg:copy
    Created postgresql-opaque-28752 as DATABASE_URL

    b)升级为主数据库 : heroku pg:promote DATABASE --app prosperdai

6.设置环境变量:

我们的web项目中涉及到一些安全性的信息的时候,我们不会直接写在文件中,尤其是开源项目。

设置config环境变量 : heroku config:set FLASK_CONFIG=heroku –app prosperdai
提交你的配置设置 : heroku _ to run heroku config

这一块的config变量我们如果不想用命令设置,也可以在heroku的控制面板中:

  • https://dashboard.heroku.com/
  • 选中自己的项目app名称
  • 选择Settings选项就能进入到自己账户里面网页配置config环境变量等
  • 这里面还有可以看到你的DATABASE_URL地址,记得替换你的config文件里的配置

7.说明:

如果你是win系统的话,建议pass掉运行生产WEB服务器Gunicorn那块,
因为在win上面操作会报很多模块没有存在
可以直接来到按照Flask-SSLify启用安全HTTP,操作后,执行git push命令部署
不过还是要记得添加Profile文件,这个Profile文件,不是txt文档,就是直接明名为Profile就行

8.提交:

差不多就是正常的git命令提交项目代码


    git add .

    git commit -am "make it better"

    git push heroku master


    如果最后执行heroku run python manage.py deploy没有报错,那你就可以正常浏览在<br/>

    <appname>.heroku.com

9.调试:

  1. 想要第一次性就提交成功运行,可能不是那么容易,我们总会在一些地方出错,我们需要查看log。

    执行heroku logs,我们就可以查看错误日志检查。

  2. 直接进入https://dashboard.heroku.com/apps/进入,选择Overview,就可以看到

    最近的提交记录,我们也可以在线查看log。

  3. heroku logs –app shidai –dyno run.5507也可以通过这种命令查看卡在哪一步报错。

总结:如果你还不能部署你的web app,你可以通过google搜索你的相关关键词,基本上都可以解决掉。

感谢:

狗书:《Flask web development》

廖雪峰python相关基础课程

《笨方法学python》

零零碎碎的在线编程学习网站

欢迎关注微信公众号:dedeok,分享一些android python相关开发有趣的事情。

个人博客:www.daixin.me

谢谢你能看到此文结束。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

第7章 部署到heroku上-将应用发布

请关注我的小站:http://oideas.herokuapp.com/ 首先还是推荐nswbmw大神的blog,这篇把nodejs的项目部署到heroku上真心不错,下面我就再重复一下TA的blog...
  • jov123
  • jov123
  • 2014-02-26 22:15
  • 2954

如何部署Python Web应用:记录一次Heroku部署完整过程

0.选择Heroku云平台        伴随着云计算的浪潮,国内的云服务可谓多种多样,价格虽然不高,但是真正能够提供永久免费使用的,哪怕有些限制也好,似乎也找不到。    出于学习/研究/...
  • xpleaf
  • xpleaf
  • 2016-03-13 11:45
  • 1161

如何使用git创建项目,创建分支

git config -global user.name "Your name" git config -global user.email "you@example.com&q...
  • wfdtxz
  • wfdtxz
  • 2012-09-13 09:45
  • 172199

flask程序部署到heroku平台的过程

一.准备app及开发环境(若已经准备好可以跳过直接到后面的部署,下面我以原书作者源代码为示例) 1.在github上新建一个仓库(假设为myapp),然后克隆到本地(不要照抄下面的代码,只是个实例...

heroku 部署flask应用

运行环境:ubuntu 14.04 ; python 2.7.6; git 2.7;遇到bug : 1 ,heroku login 无法登陆 2,本地模拟heroku 测...

部署Flask App到Heroku完整过程

HerokuHeroku是老牌的免费云空间,可以很好的满足我们学习/研究/实验/测试的目的,同时,他对Python的支持非常良好。 下面来介绍如何把已经写完的Flask程序部署到Heroku平台。

heroku部署java web项目

前期准备 下载heroku toolbelt工具 heroku login 命令登录,设置heroku的邮箱和密码 官方文档,使用jetty-runner部署java应用 Getting Starte...

xen创建 Domain 过程(详细描述)

创建 Domain 过程 Contents 概述第 1 步:xm 创建 domain第 2 步:xend 处理创建 domain 请求第 3 步:xend 处理启动 domain 请求第 4 步:...

omapl138EVM 启动过程详细描述

前一年,探索了一阵OMAPL137,现在决定转到OMAPL138上来,其原因颇多不多述。 安装最新的DVSDK,其版本号为,ti-dvsdk-omapl13-evm-04-03-00-06 按照其...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)