开机进不了windows系统上heroku使用不了怎么办?

Heroku部署flask博客 - 简书
Heroku部署flask博客
昨天除开吃饭,忙活了一天,最终在晚上九点半部署成功,后又对页面的一些细节做了一些修改,重新push了几次,途中又出现一些问题,直到一点才入睡。
一开始,我了解了一下域名,空间,虚拟主机,发现市面上的云真是多,但一个月最低价格都接近百元,而且实名认证还需要好几天时间,等不及,所以打算先用heroku。等以后了解多了,还是需要购买国内服务商,因为heroku访问速度实在太慢了。下面是我的部署过程。系统win7。有疑惑的话,可以留下评论。(请忽略文中出现的一些超链接,编辑器出现问题)1,注册heroku,用本子记下注册邮箱跟密码,待会有用2,下载heroku-toolbelt,安装3,安装git。注意其中有一步:Adjusting your PATH environment
一定要选择第二项:Use Git from the windows commang prompt. 这样才能在CMD中使用Git命令,后面会方便许多。如果早已安装,建议在CMD中输入git,看能否识别,如果不能,建议重新安装git4,在桌面新建文件夹,比如myheroku,将你的代码复制进来(包括venv文件夹,不包括.git文件夹,可以包括sqlite文件)5,此时的文件结构应该是:进入myheroku,就能看到config.py,
manage.py6,此处,我默认你已看完《FlaskWeb开发》(狗书)的17章,代码按照作者的来。procfile可以直接复制作者的。requirements.txt你也搞定了。7,首先进行本地测试,因为把代码上传到云端,会浪费很多时间,只要出现小问题就要重复上传。如果本地测试通过了,基本成功了90%。8,在myheroku中,新建procfile.windows文件,内容为:web: python manage.py runserver
。 新建.env文件,按照狗书所写,放入你必须的环境变量。9,打开CMD,输入以下命令cd desktop\myherokuvenv\scripts\activatepython manage.py upgrade(如果没有insert_roles,请自己insert)heroku local web -f procfile.windows如果能打开本地页面,则测试成功。如果出现错误,请自行google。10,远程部署。打开CMD,输入以下命令cd desktop\myherokuvenv\scripts\activategit config --global http.postBuffer
(让文件上传更快)git initgit add --allgit commit -m "version1.0"heroku login
(这一步按提示输入你注册时的邮箱跟密码,以后就不用输了,你的电脑会记住)heroku create example
(此处example即为app名称,可以自行命名,博客网址即为,https://example.herokuapp.com,后期也可以登录官网修改app名称)heroku addons:create heroku-postgresql:hobby-dev
(配置数据库)heroku config:set DISABLE_COLLECTSTATIC=1heroku config:set FLASK_CONFIG=heroku
(此处设置你必须的环境变量,比如MAIL_USERNAME,MAIL_PASSWORD 但我没用邮件验证功能,所以不需要设置)git push heroku master
(推送到远程仓库)heroku run python manage.py deploy
(运行deploy)heroku open
(会自动打开网站)11,如果出现错误,推荐删除这次部署,修改代码,重头再来。heroku apps:destroy easonblog12,我是按照这篇博文部署的,作者写的更详细一些
https://yq.aliyun.com/articles/40785
本来做了个目录快速跳转的,后来简书不再支持这种写法,无奈阅读只能自己根据章节明ctrl+f/v/enter来定位了 ┑( ̄Д  ̄)┍ --------------------------目录结构----------------------- 前言 Flask框架的特点 本书...
Heroku平台 Heroku平台的灵活性极高且支持多种编程语言。若想把程序部署到Heroku上,开发者要使用Git把程序推送到Heroku的Git服务器上。在服务器上,git push命令会自动触发安装、配置和部署程序。 Heroku使用名为Dyno的计算单元衡量用量,并...
学习 Flask,写完一个 Flask 应用需要部署的时候,就想着折腾自己的服务器。根据搜索的教程照做,对于原理一知半解,磕磕碰碰,只要运行起来了,谢天谢地然后不再折腾了,到下一次还需要部署时,这样的过程就会重复一次。不知道多少人的膝盖中箭了呢?我也这样干过,这么做确实很蠢...
英文原文来自 https://wagtail.io/blog/deploying-wagtail-heroku/文章是去年的,较老了,可以对比 https://github.com/torchbox/wagtaildemo 该项目进行学习 Heroku是一个好的平台,当我们...
Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgbook/spring-boot-reference-guide-zh/details带目录浏览地址:http://www.maoyupeng.com/sprin...
在家空闲的日子,拿起画笔,涂上自己喜欢的色彩,给一块块小石头穿新装,是一件累并幸福的事情。要说起画画,其实并不是一件轻松的事情,通常一坐就是几个小时,腰酸背痛,眼花缭乱。但是,每当看到成品出炉的时候,内心的成就感和满足感油然而生,所有的疲惫和汗水早已烟消云散。在别人看来,每...
缘起——逃避与勇气 这段时间一直在思考,是什么让自己,毅然决然地放下身边的一切,没有告诉任何人,包括家人,独自拾起简陋行装,坐上广州东开往昆明的列车,踏上这一片从未踏足的地方。 是因为一部分人眼里所说的勇气与洒脱?还是另一部分人所说的逃避责任,逃避现实的懦弱与任性? 直到出...
functionisDate(dateString){ if(dateString.trim()==&&) varr=dateString.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); if(r==nu...
数组去重的三种方法 前两天面试的时候,面试官出的考题。现在我来总结一下,算是慢慢积累吧 1.两个循环,挨个对比 这种方式应该是可以最容易考虑到的,但是数组过长的话,效率应该会变差。 2.先排序然后用一次循环 排序后用数组后一位比较前一位,一次循环就好了,但是破坏了原有数组的...git push heroku master 部署不到 heroku 上去? · Ruby China
我在学Ruby on Rails Tutorial,之前的程序都已经部署到heroku上去了,可是今天完成第八章的代码要进行部署,却部署不上去了,和之前部署的时间隔了有一个多月了。提示如下问题:
ssh: connect to host heroku.com port 22: Bad file number
fatal: Could not read from remote repository
Please make sure you have the correct access rights
and the repository exists.
我用的操作系统是WIN7,用RailsInstaller安装的,请各位大虾指点一下,多谢了!
有问题可以先社区搜一下,因为heroku的22端口被墙,前段时间有很多贴讨论。
多谢,我开始搜索来着,但是开始没有搜到合适的内容,发完后,看了一下“部署”的帖子才看到
翻墙+多次提交可以。我现在就是这样提交的。痛苦。
要翻墙,少年。。
后方可回复, 如果你还没有账号请点击这里 。
共收到 4 条回复你的位置: >
> 在Windows和Heroku上搭建Ghost博客
Ghost是在著名的众筹网站KickStarter上众筹成功后,开发的基于Node.js的开源博客平台,其目标就是尽量简化并专注于博客,直指现在流行但已日趋臃肿的Wordpress。日,Ghost在面向6000名KickStater支持者推出三周后,终于面向公众开放了。
Ghost比原来的Wordpress有着先天的优势,因为它是一个全新的平台,可以使用优秀的Node.js平台而不会有任何历史遗留问题。相比较,Wordpress发展到现在,在代码架构、具体实现、设计、决策过程到开源协作模式都已经变得过时而臃肿,加上大量第三方插件对特定实现的依赖,开发效率变得极低,任何大改动都是牵一发而动全身。
我是在Ghost 0.3.3版本发布后不久注意到这个博客平台的,当时就想着在Heroku上搭建一个玩玩,但鉴于Ghost不是很成熟,并且官网还提供了一个月的试用,也就作罢了。不过试用后,确实有耳目一新的感觉。现在试用到期了,Ghost版本也更新到0.4.2了,就想再鼓捣一个可以接着玩的地方。
这个是我搭建在Heroku上的博客,大家可以体验下:
绑定域名:
在Heroku上搭建Ghost博客,可以首先在本地搭建好,然后修改再部署到Heroku上,下面就按照这个流程一步步说明。
一、在Windows上搭建Ghost博客
1、首先打开网页,点击页面中的‘INSTALL’按钮,将会下载一个‘.msi’文件下载,下载完成后点击这个msi文件来安装Node 和npm,直到屏幕上显示你已经成功安装Node.js;
2、在上点击‘Download Ghost’下载最新的Ghost版本(该页面已被强,请自备梯子或下载我),然后解压Ghost到指定位置,如G:ghost;
3、打开cmd命令行窗口,切换到Ghost所在文件夹,然后在命令行依次输入下面两条命令:
npm –registry http://registry.cnpmjs.org info underscore
npm install –production
一切顺利的话,你会看到类似下面的情况:
注:npm所定义的软件源有出现在GFW的列表中,第一行命令就是使用国内npm镜像来防止安装这些包失败,不然在经历漫长的等待后可能会看到失败的信息。
4、接下来就启动Ghost了, 输入命令,
然后在浏览器中输入下面地址就可以看到已经搭建好的Ghost。要停止浏览,就切换到命令行窗口,按Ctrl+C,输入‘y’终止批处理操作。
127.0.0.1:2368
至此,在Windows上搭建Ghost的部署就全部结束了,还是挺easy的,下面就是修改过和部署到Heroku上了。
二、修改Ghost博客为部署到Heroku做准备
由于Heroku使用的数据库是PostgreSQL而不是SQLite3,所以在完成本地搭建后,我们还需将这个Ghost博客通过下面几个步骤进行修改。
1、打开Ghost根目录下的package.json,查找”sqlite3″:这一行,并将其修改为
"pg": "latest",
"pg": "latest",
2、在Ghost根目录下新建一个名为Procfile的文件,里面输入以下内容,让Heroku可以启动Ghost;
web: node index.js --production
web: node index.js --production
这两处的修改和下面第三部分中对config.js文件的修改,大家可以参考我修改好的示例文件,放在百度网盘()。
三、将Ghost博客部署到Heroku
修改完本地的Ghost后,就要准备将博客部署到Heroku上了。
1、注册Heroku,,速度慢的话就把代理挂起来,这里假设大家都用过Heroku了,还没有注册或使用过Heroku的,先去Google或百度看些简单的教程吧;
2、打开,点击‘Heroku Toolbelt for Windows’来下载和安装Heroku Toolbelt,这个是实现在命令行窗口下登录和管理Heroku;
3、打开,点击‘Download for Windows’,下载Windows版本的git并安装;
4、打开CMD命令行窗口,然后输入下面命令,按照提示输入你的用户名和密码登录上heroku,然后切换到刚才的Ghost目录下;
heroku login
heroku login
5、将Ghsot目录初始化成一个git仓库,依次输入命令:
git commit -m "Upload all Ghost files"
git initgit add .git commit -m "Upload all Ghost files"
6、用命令创建一个新的Heroku APP
heroku create
heroku create
或者用下面命令关联一个已经创建好的APP,里面红色的project要换成已创建的具体的APP名字
git remote add heroku :&span style="color: #ff0000;"&project&/span&.git
git remote add heroku git@heroku.com:&span style="color: #ff0000;"&project&/span&.git
然后用下面命令可以看当前目录的git关联属性,也就是你的Ghost博客要上传的地方
git remote -v
我的输入后是下面这个样子,里面的mancao对应的是我的APP的名字。
7、输入命令为Heroku APP增加PostgreSQL数据库
heroku addons:add heroku-postgresql:dev
heroku addons:add heroku-postgresql:dev
这条命令完成后会输出一条类似“Attached as HEROKU_POSTGRESQL_JADE_URL”的信息,然后你需要根据JADE的具体内容来输入命令,可以参考下面图像;
heroku pg:promote HEROKU_POSTGRESQL_&span style="color: #ff0000;"&JADE&/span&
heroku pg:promote HEROKU_POSTGRESQL_&span style="color: #ff0000;"&JADE&/span&
8、接下来打开Ghost目录下的config.js文件:
(1)修改里面的
url: ‘http://my-ghost-blog.com’,
为你实际的博客地址,如我的是绑定域名的
url: ‘http://ghost.xuhehuan.com’,
(2)修改里面的
host: '127.0.0.1',
port: '2368'
host: '127.0.0.1',port: '2368'
host: '0.0.0.0',
port: process.env.PORT
host: '0.0.0.0',port: process.env.PORT
(3)修改里面的
database: {
client: ‘sqlite3’,
connection: {
filename: path.join(__dirname, ‘/content/data/ghost.db’)
debug: false
database: {
client: ‘postgres’,
connection: {
host: process.env.POSTGRES_HOST,
user: process.env.POSTGRES_USER,
password: process.env.POSTGRES_PASSWORD,
database: process.env.POSTGRES_DATABASE,
port: &#’
debug: false
保存,关闭文件。
9、设置数据库信息。登录Heroku的网页,找到所用的APP,然后点击Add-ons中所用到的数据库,
两次单击后可以看到数据库的配置信息
10、依次在命令行窗口设置上图看到的各个数据信息,命令中的host等红色信息都要换成图中后面对应的具体信息;
heroku config:set POSTGRES_HOST=&span style="color: #ff0000;"&host&/span&
heroku config:set POSTGRES_USER=&span style="color: #ff0000;"&user&/span&
heroku config:set POSTGRES_PASSWORD=&span style="color: #ff0000;"&password&/span&
heroku config:set POSTGRES_DATABASE=&span style="color: #ff0000;"&database&/span&
heroku config:set POSTGRES_HOST=&span style="color: #ff0000;"&host&/span&heroku config:set POSTGRES_USER=&span style="color: #ff0000;"&user&/span&heroku config:set POSTGRES_PASSWORD=&span style="color: #ff0000;"&password&/span&heroku config:set POSTGRES_DATABASE=&span style="color: #ff0000;"&database&/span&
11、将代码部署到Heroku;
git commit -m "Committing all ghost files"
git push heroku master
git add .git commit -m "Committing all ghost files"git push heroku master
如果一切顺利,这时你就可以通过访问Heroku的APP地址来访问你的Ghost博客了。
可能碰到的错误:
如果你在运行‘git push heroku master’时碰到了如下的错误:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Permission denied (publickey).fatal: The remote end hung up unexpectedly
这通常是由于在初始化登录Heroku时,ssh key没有放到服务器上,可以通过下面命令来改正这个问题:
add ~/.ssh/id_rsa.pub
里面~的路径要修改成Windows系统里面对应的实际路径,通常是打开cmd窗口后的默认路径,如:C:\Documents and Settings\xhh&。
1、在Heroku上实验,使用Ghost0.4.1可以正常运行,Ghost0.4.2无法正常工作;
2、Heroku和Nodejitsu提供的Node.js主机与Ghost并不兼容。它们可以工作,但会删除你的文件,所以你上传的图片和数据库的内容都会消失;Heroku支持MySQL数据库,你可以使用它来弥补这个问题,但你仍然会丢失一些上传的图片。
欢迎转载,转载请注明出处: &
与本文相关的文章Windows下搭建Heroku的nodejs测试环境
在Heroku上新建App: twittest-njs,下载heroku-toolbelt.exe,安装后在本地dos下heroku login登录。
然后步骤如下:
#add web.js 添加
本地git init一个目录:twittest-njs,打开dos进入该目录
运行#npm init
运行#npm install express logfmt –save
dos下提示registry.npmjs.org访问出错:
npm ERR! Error: SSL Error: CERT_UNTRUSTED
wayout: npm config set strict-ssl false
npm ERR! error rolling back [email protected] Error: ENOTEMPTY
npm ERR! Unsupported
npm ERR! Not compatible with your version of node/npm: [email protected]
npm ERR! Required: {“node”:”&= 0.8.0″}
npm ERR! Actual: {“npm”:”1.1.12″,”node”:”0.6.14″}
wayout: upgradeto Program Filesnodejs
解决办法,升级node和npm到最新版。
#add Procfile 创建Procfile文件到当前目录,内容如下:
web: node web.js
在目录 D:Program FilesHerokuruby-1.9.2bin& 下运行#foreman start出错,提示:
foreman start(0.63)
Bad file descriptor
wayout: ggem install foreman -v 0.61
原因是0.63版本的foreman有问题,换到0.61即可。
复制 copy foreman和foreman.bat 从D:Program FilesHerokuruby-1.9.2bin& 到 to herokutwittest-njs
编辑foreman.bat edit: ruby.exe前增加路径:”D:/Program Files/Heroku/ruby-1.9.2/bin/”
当前目录herokutwittest-njs下运行:#foreman start
结果显示如下:
19:08:07 web.1 | started with pid 5880
19:08:09 web.1 | Listening on 5000
打开浏览器访问:http://localhost:5000/,网页显示:Hello JS World!
至此,Windows下搭建Heroku的nodejs测试环境成功。
补充:如果部署到Heroku出现如下错误:
Fatal: Could not read from remote repository.
PuTTY Fatal Error: Disconnected: No supported authentication methods available
强烈建议,安装时选择openssh,而不是putty。
Tags:,,,,,
This entry was posted on Thursday, January 16th, 2014 at 7:42 pm and is filed under. You can follow any responses to this entry through thefeed. You can, orfrom your own site.
Copyright (C) , All Rights Reserved.
版权所有 闽ICP备号
processed in 0.037 (s). 13 q(s)零、写在前面
首先声明,我自己也并不是什么大牛,写这个入门的目的就是把我实际使用过程以及遇到的问题总结起来,希望可以给新手朋友或者初次接触云平台的朋友一些帮助。如果有什么错误欢迎大家指出!
采用Q&A的方式来介绍一下本文的背景吧。
为什么要用云平台:
&&云平台不用租域名不用租服务器不用备案不用自己手动配置各种软件,而且是免费的。
云平台有什么缺点?
&&缺点就是流量限制一般比较严,性能相对较差。但是就我自己的实际使用经验来看,一般的小站或者个人博客放在云平台上是完全够用的。并且云平台会提供无缝扩展的服务,如果需要更高性能或者更多流量可以花钱扩展。还有一点就是云平台的域名是二级域名,如果您想使用自己的域名的话,可以通过alias别名设置。
为什么要用国外的云平台:
&&国内的云平台我个人总结有两大缺点:1、文档不完善,2、限制较多。
  文档不完善就导致了新手很难入门,往往会遇到各种各样的问题难以解决。国外的云平台文档非常完善,并且有很多示例,只要你懂一些基本的英文就可以轻松搞定。限制较多主要体现在开发者认证以及开发环境这两方面。新浪云和百度云都需要申请开发者认证,我自己是很讨厌这种方式的。开发环境限制就是版本旧,自由度低。
为什么要用heroku:
&&国外的云平台,我自己也试用过几个。因为国外的云平台文档大多很完善,所以不存在使用障碍,选择的标准就变成了适不适合自己。因为我使用的是Python的django框架,所以对比之下发现heroku对Python的支持更好,并且官方就有部署django的示例,所以选择了heroku。实际应用中发现确实很不错。
好了,基本的背景就介绍完毕了,大家如果有什么疑问可以留言问我,一定做到知无不言,言无不尽!
一、新的开始
首先来看看长什么样吧!
怎么样,蛮酷的吧~
接着我们注册一个帐号。点击右上角的&Login&跳转到登录页面,然后点击中间靠下的
大家不要被它的外表迷惑哦,它其实是一个按钮。点击之后跳转到注册页面,咦,怎么只有一个输入框?大家不用担心,heroku为了方便用户注册只需要输入邮箱即可。之后可以设置密码。好了,我们输入自己的邮箱然后点击&sign up&按钮,跳转到的新页面中显示
这个是heroku验证邮箱的提示,我们打开刚才输入的邮箱就可以看到heroku的验证邮件。如果没有的话看一下垃圾箱,有时候会被当做垃圾邮件。
点击邮件里的第一个链接,就可以看到欢迎界面了。
这里设置好自己的密码然后点击右下角的&Save&按钮就完成注册了。
别着急,现在还不能开始使用heroku,我们还需要配置一下heroku的toolbelt工具包。
什么是toolbelt?
&&toolbelt是heroku提供的命令行工具包,其中包括了部署heroku应用需要用到的所有工具。
注册完成后的页面中最上方应该可以看到这个提示:
heroku会自动检测你的系统平台,我的是mac os所以提示下载mac os版的toolbelt(如果你的提示和你使用的系统不符的话,点击下面的&other operating systems&选择对应的软件包)。
好了,点击&Download Heroku Toolbelt for Mac OS&就会开始下载toolbelt安装包了。
下载完成之后双击打开进行安装,安装好之后就可以正式开始我们的heroku之旅了~
二、初识toolbelt
heroku的操作都是在命令行下进行的,不熟悉的同学也不用担心,我会详细讲解每一步操作的,跟着做就好了~
我们这一讲只学习一个操作&&登录heroku。
细心的同学应该已经发现了,其实上面那张图的右半部分就是登录的命令~
我们打开终端(windows下是命令行),输入
heroku login
&然后回车确认,就会看到要求我们输入邮箱和密码,输入注册时使用的邮箱和密码就可以登录了。
出现图中&Authentication successful&的字样就表示登录成功了!
好了,第一讲就到这里吧,下一讲就要开始真正的部署应用了~
PS:由于本人文笔较差,高中作文分数稳定45分。。。所以大家如果有什么意见和建议的话尽管给我提~讲的不清楚或者错误的地方也欢迎指出,谢谢!
阅读(...) 评论()

我要回帖

更多关于 xunjie.herokuapp 的文章

 

随机推荐