说明:个人博客地址为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. Android Service和广播

    前言: 我们都知道Android的四大基本组件:Activity.ContentProvider.Service以及BroadcastReceiver,前面的两个我们在前几篇已经具体讲解了,今天这一天 ...

  2. java中文排序

    对中文名称进行排序,不多说,上代码 package test; /** * @Title: Person.java * @Copyright: Copyright (c) 2012-11-19 * @ ...

  3. Linux设备管理之权限倾斜——mem、proc、devfs、sysfs、udev(下)

    linux发展第一阶段 01devfs(linux2.6之前) 02udev(用户空间) 03sysfs(linux2.6之后,描述设备属性) linux发展第二阶段 01sysfs+udev(ude ...

  4. Java视频教程

    http://outofmemory.cn/java/video/ http://outofmemory.cn/tutorial/

  5. [UVA315]Network(tarjan, 求割点)

    题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...

  6. android动画坐标定义

    这段时间一直在忙Android的项目,总算抽出点时间休息一下,准备把一些项目用到的Android经验分享一下. 在Android开发过程中,经常会碰到Activity之间的切换效果的问题,下面介绍一下 ...

  7. POJ 2947 Widget Factory (高斯消元 判多解 无解 和解集 模7情况)

    题目链接 题意: 公司被吞并,老员工几乎全部被炒鱿鱼.一共有n种不同的工具,编号1-N(代码中是0—N-1), 每种工具的加工时间为3—9天 ,但是现在老员工不在我们不知道每种工具的加工时间,庆幸的是 ...

  8. java中的clone

    .clone 要实现cloneable接口: .深度clone和浅度clone .对象.clone() 1. Clone&Copy      假设现在有一个Employee对象,Employe ...

  9. MySQL Timeout解析

    “And God said, Let there be network: and there was timeout”在使用MySQL的过程中,你是否遇到了众多让人百思不得其解的Timeout?那么这 ...

  10. POJ 3080 (字符串水题) Blue Jeans

    题意: 找出这些串中最长的公共子串(长度≥3),如果长度相同输出字典序最小的那个. 分析: 用库函数strstr直接查找就好了,用KMP反而是杀鸡用牛刀. #include <cstdio> ...