转载:http://www.cnblogs.com/shamoyuu/p/node_bae.html

百度有一个应用引擎,价格非常便宜,Java的tomcat每天4毛钱,node每天2毛钱,我以前在上面搭建过一个JavaWeb的项目,今天来说说怎么搭建nodejs+express+mysql的后台。

首先打开console.bce.baidu.com,注册登录完成,然后新建一个应用引擎BAE如下图进行设置

目前基础版的BAE只支持node4.4.4,不过应该已经足够了。如果是用koa2的,可以选择专业版,贵得多,但是支持最新的node版本。

svn或者git可以根据自己的需要选择,我下面是以svn为例。

然后就会看到我们新建的项目了

展开“更多操作”,点击“发布设置”,然后打开“自动发布设置”的开关,这个意思是svn提交以后,会自动部署,不然每次都要手动点一下。

复制svn地址,然后在本地检出,账号密码就是你百度的账号密码,可以看到两个个默认的文件package.json和server.js,还有其他的文件不用理会。

package.json就是。。。。package.json

server.js就是express里的www文件和app.js文件的合体

然后我们把这两个文件都删掉

然后我们在这个文件夹上打开cmd,运行express命令(express的安装自己百度),就会生成一个express标准的项目。

我们需要改造两点:

  1. 需要给bin文件夹的www文件增加一个js的扩展名,改成www.js
  2. 需要设置package.json文件里start的属性为"node --harmony ./bin/www.js"

之所以要这样改,是因为BAE基础版启动的时候,必须是一个js文件。加--harmony是让BAE支持ES6的语法。

好了,可以提交了,如果不出意外,就可以看到express的初始页面

注意不要提交node_modules文件夹,系统会自动帮你install的

然后我们在express里编写自己的代码,增加mysql,实现增删改查,这一步略了。我们直接来讲BAE里的mysql怎么用

在BAE部署列表页面的左侧,有一排菜单,点击扩展服务

然后点击“添加新服务”,选择mysql,勾选同意,点击立即购买。现在是免费的1G空间。这个数据库只有BAE可以访问,其他环境下无法访问(百度内网也可以)

新建好了我们就可以在扩展服务界面看到我们新建的mysql数据库了,点击数据库的名字(名字是乱码一样的,自动生成的)可以看到数据库所有的信息了

↑↑↑这就是BAE环境下的数据库配置↑↑↑

数据库的账号和密码,分别是你的AK和SK,可以点击问号,然后点击查看来获取到

如果想要根据不同的环境来区分数据库的话,可以修改根目录下app.conf文件,在最后添加下面的代码

environment :
NODE_ENV : "production"

这个文件须严格遵照YAML语法规范(http://yaml.org/),任何不合规范的配置,如使用中文、Tab或不符合缩进规则等,均会导致发布失败

然后可以在代码里直接获取这个变量

process.env.NODE_ENV //production

.

百度 BAE 项目部署的更多相关文章

  1. 百度BAE JAVA环境项目部署和调试

    起初在一个应用挂在虚拟主机上,昨天早上虚拟主机挂了.本来考虑迁移到SAE上的,但之前发现SAE的JVM云豆消耗的太快(PS:我是中级开发者,每月 10000云豆,如果有哪位大神对SAE JAVA云豆能 ...

  2. 如何使用百度bae部署web项目

    百度bae提供了支持各种开发环境的的应用引擎,包括node.js.php.java等,而且还免费提供了一定容量的mysql.mongodb.redis等数据库,所以,可以把它当作一个云服务器来使用.而 ...

  3. 借用服务器百度BAE

    3一.简介 对于普通的开发者,不必要买服务器和买域名,这时要将自己的项目传到服务器上,就用到了百度BAE这样的,可以直接传项目的服务器. 二.申请 登录百度开放平台上 三.登录网址,选择要使用的项目 ...

  4. 关于在BAE上部署ThinkPHP框架的问题

    现在有点小兴奋,因为在在BAE上部署ThinkPHP框架的问题快折腾一天了,午觉都没睡,不过没白整总算有点结果.不扯淡了,直入正题吧. 之前熟悉ThinkPHP框架,想在BAE上用ThinkPHP做点 ...

  5. javaWeb项目部署到阿里云服务器步骤

    记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以 ...

  6. 百度bae定时任务使用方法

    最近想做个定时执行某些请求的任务,因为不是java的,不能有常住内存的控制,php不知百度bae云怎么做,找了很久终于被我找到了 https://cloud.baidu.com/doc/BAE/GUI ...

  7. 教你如何一步步将项目部署到Github

    注册Github账号有半年多的时间,却一直不知道如何将自己做好的项目部署到Github中.看了网上许多的教程,要么一开始就来Git命令行,要么直接就来一堆术语,很少能够真正说中要点,解决我们的烦恼. ...

  8. Shell编程-项目部署(一)

    由于实际工作中经常用到需要部署项目,比较麻烦,今天记录下如何利用shell脚本完成自动部署的工作,毕竟不是专业的运维出身,写的不好,还请勿喷_^o^_ 今天以部署Django项目为演示,进行部署项目, ...

  9. 项目部署到tomcat

    准备工作 第一步 准备项目部署文件 准备项目中使用的数据库.sql文件. 准备项目程序(整个项目的war包文件) 第二步 安装运行环境 依次安装JDK.TOMCAT.MYSQL NAVICAT需要注意 ...

随机推荐

  1. CRM知识点汇总(未完💩💩💩💩💩)

    一:项目中每个类的作用 StarkSite 对照admin中的AdminSite,相当于一个容器,用来存放类与类之间的关系. 先实例化对象,然后执行该对象的register方法.将注册类添加到_reg ...

  2. Django--------问题:在terminal命令行创建超级用户时入到password时输入为什么没有反应?

    首先如果遇到这样的问题不用担心,一般一会儿就可以解决: 其实,输入的时候并不是没有反应,只是你输入的时候命令行没有将你的输入显示出来,关键是输入行对Password:********也不是采用这种方式 ...

  3. 设计模式(一)单例模式:1-饿汉模式(Eager)

    思想: 饿汉模式是最常提及的2种单例模式之一,其核心思想,是类持有一个自身的 instance 属性,并且在申明的同时立即初始化. 同时,类将自身的构造器权限设为 private,防止外部代码创建对象 ...

  4. Python日志记录(Logging)

    日志记录跟程序的测试相关,并且在大幅度更改程序内核时很有用,它可以帮助我们找到问题和错误的所在.日志记录基本上就是收集与程序运行有关的数据,这样可以在随后进行检查或者累计数据. 1.简单示例 在Pyt ...

  5. 动态方式破解apk进阶篇(IDA调试so源码)

    动态方式破解apk进阶篇(IDA调试so源码) 来源 https://blog.csdn.net/qq_21051503/article/details/74907449 下面就说关于在IDA中And ...

  6. MySQL-MongoDB开源监控利器之PMM

    背景说明: PMM是percona公司提供的一个对于MySQL和MongoDB的监控和管理平台.PMM有两部分组成PMM Client和PMM Server PMM Client:安装在每一台需要进行 ...

  7. [转] Makefile 基础 (6) —— Makefile 使用条件判断

    该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886 我转自 ...

  8. Unity 导出的android项目自动生成Private Libraries

    如果Unity里面Plugins/Android 添加了 jar 文件,则导出Android 项目时会自动生成 Private Libraries. 而且里面的项还删不掉 然后在网上搜了一下,找到了原 ...

  9. hdu 2857 点在直线上的投影+直线的交点

    Mirror and Light Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  10. 获取cookie中的某个参数值

    因为cookie的值是很多key=value连接起来的字符串,所以如果要取cookie中某个key的值: function getCookie(name) { let cookieValue = nu ...