说明:个人博客地址为edwardesire.com,欢迎前来品尝。

Heroku是国外普遍使用大受好评的PaaS,支持Nodejs,基础服务(Nodejs+MongoDB)基本都是免费的。搭建MEAN框架也不怎么费劲。名字是'Hero'和'taiku(俳句)'的合体。我们先一起来读一读发音(her-OH-koo)好了。


  1. 准备工作

    github官网上下载GitHubSetup.exe,我们需要使用Git Bash进入到shell里头输入命令(与RSA公钥的有关)。

  2. RSA密钥的配置

    Heroku支持RSA和DSA密钥格式,我们在安装好GitHub Windows客户端后,在/Users/user/下右键点击.ssh(没有就新建一个),打开Git Bash。如图,输入 ssh-keygen -t rsa,确认路径,无需理会passphrase确确认(因为我已经有id_rsa密钥所以多了个覆盖确定)。

    接着就是想公钥上传到Heroku了,这里使用heroku keys:add添加密钥,如果成功应该会出现下图。

    还有一些命令也许以后会用到,显示已有密钥 heroku keys,移除已有密钥 heroku keys:remove 密钥名(从上个命令可以得到),移除所有密钥 heroku keys:clear

    最后我们只确定SSH是否能正常使用,输入命令 ssh -v git@heroku.com,如果出现下图的Authenticated to heroku.com就可以用git来同步代码了。

  3. 上传源码

    在项目(最好没有.git文件夹)根目录添加一个能让Heroku识别应用入口的文件Procfile,里头输入web: node server.js。再右键点击空白,点击Git Bash进入Shell。

    输入heroku login输入你的用户名和密码。接下来就是创建应用和数据库

     heroku create appName
    heroku addons:add mongoLab

    添加mongoDB的插件后还需要配置数据库信息。我们最好在mongolab新建一个用户来给应用使用,把项目的数据库配置修改为 mongodb://<dbuser>:<dbpassword>@ds051720.mongolab.com:51720/<dbname>

    再用git同步代码(这里就会覆盖掉以前git的配置咯)

     git init
    git add .
    git commit -m "some messages"

    再就是创建数据库的插件 heroku addons:add mongolab,最后使用命令 git push heroku master,如果出现下图的Launching... done,我们就打开链接试试。

  4. 相关调试方法

    当我们程序出错时,我们可以使用 heroku logs --tail查看服务器的日志。一般在本地能正常运行,放在平台上就应该只是配置问题了。

在Heroku上部署MEAN的更多相关文章

  1. 在Heroku上部署Node.js应用

    最近在学习Node.js,想找一个可以免费部署Node的平台,于是便找到了Heroku 直接进入主题,接下来我们一步一步部署自己的Node应用. 步骤1: 注册一个免费的Heroku账号. 步骤2: ...

  2. 在heroku上部署gost代理服务端

    gost ( https://github.com/ginuerzh/gost ) gost 的 websocket tunnel 功能使用 WebSocket 协议,相较 HTTP 协议能做更多事, ...

  3. 如何查看在Heroku上部署了那些站点

        使用以下命令查看 Heroku 站点地址:   $ heroku domains   例如: http://peaceful-springs-94972.herokuapp.com/signu ...

  4. 通过Mono 在 Heroku 上运行 .NET 应用

    英文原文:Running .NET on Heroku 中文原文:在 Heroku 上运行 .NET 应用 自从加入了Heroku之后,我就想在这个平台上运行.NET程序.现在我很高兴向大家宣布,我们 ...

  5. 三步将Node应用部署到Heroku上

    Heroku是一个提供快速部署服务的云平台.支持Node,Ruby,Java,PHP,Python,Go多种语言,今天体验了下,简直不要太爽.下面简单的介绍一下. 首先还是要注册一个账号:https: ...

  6. 三步将Node应用部署到Heroku上 --转载

    Heroku是一个提供快速部署服务的云平台.支持Node,Ruby,Java,PHP,Python,Go多种语言,今天体验了下,简直不要太爽.下面简单的介绍一下. 首先还是要注册一个账号:https: ...

  7. Flask 教程 第十八章:Heroku上的部署

    本文翻译自The Flask Mega-Tutorial Part XVIII: Deployment on Heroku 这是Flask Mega-Tutorial系列的第十八部分,我将在其中部署M ...

  8. [原创]Heroku简单部署指南

    目录 1. 设置 1.1 环境依赖 1.2 Heroku 客户端安装 1.3 登录 2. 应用 2.1 创建 2.2 查看日志 2.3 附加组件 2.4 交互式 Shell 2.5 定义 配置变量 2 ...

  9. 删除heroku上的数据库记录

    部署本地项目到heroku上.在线上插入数据到数据库,本地代码再次更新到heroku,线上的数据记录还存在单是图片丢失.问题还没有解决: 本地代码和heroku代码怎样同步? heroku使用的pg和 ...

随机推荐

  1. 3、REST风格的URL

    1.概述 HTTP协议里面,四个表示操作方式的动词:GET.POST.PUT.DELETE,它们分别对应四种基本的操作,GET用来获取资源,POST用来新建资源,PUT用来更新资源,DELETE用来删 ...

  2. HDU 3757 Evacuation Plan DP

    跟 UVa 1474 - Evacuation Plan 一个题,但是在杭电上能交过,在UVa上交不过……不知道哪里有问题…… 将施工队位置和避难所位置排序. dp[i][j] 代表前 i 个避难所收 ...

  3. BZOJ 3140 消毒(最小顶点覆盖)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=3140 题意:最近在生物实验室工作的小T遇到了大麻烦. 由于实验室最近升级的缘故,他的分格 ...

  4. Android测试框架-uiautomator

    官方示例:https://github.com/googlesamples/android-testing 官方文档请 google 要求: Android SDK v23 Android Build ...

  5. Android开发之创建桌面快捷方式

    Android创建桌面快捷方式就是在桌面这个应用上创建一个快捷方式,桌面应用:launcher2 通过查看launcher2的清单文件: <!-- Intent received used to ...

  6. Windows下搭建MySql Master-Master Replication

    1.首先下载最新版的MySql Server (http://dev.mysql.com/downloads/windows/installer/) 2.安装MySql Server到两台机器上 My ...

  7. setBackgroundDrawable和setBackgroundColor的用法

        1.设置背景图片,图片来源于drawable: flightInfoPanel.setBackgroundDrawable(getResources().getDrawable(R.drawa ...

  8. uva 1642 Magical GCD

    很经典的题目,愣是没做出来.. 题意:给出一个序列,求一子序列,满足其GCD(子序列)* length(子序列)最大. 题解: 类似单调队列的思想,每次将前面所得的最大公约数与当前数进行GCD,若GC ...

  9. UVa 11762 (期望 DP) Race to 1

    设f(x)表示x转移到1需要的次数的期望,p(x)为不超过x的素数的个数,其中能整除x的有g(x)个 则有(1-g(x)/p(x))的概率下一步还是转移到x,剩下的情况各有1/p(x)的概率转移到x/ ...

  10. UVa 10969 (圆与圆之间的覆盖问题) Sweet Dream

    题意: 有n个按先后顺序放置的不同大小不同位置的圆,求所有可见圆弧的长度. 分析: 这道题应该是大白书上例题 LA 2572 (求可见圆盘的数量) Kanazawa 的加强版,整体框架都差不多. 对于 ...