Jackblog API Server Express版, 个人博客系统, 基于RESTful架构, 使用Node.js, Express, MongoDB, Redis, Token Auth, 七牛云存储等.
JavaScript Groff
Latest commit db57d04 Oct 2, 2016 @jackhutu update package

README.md

jackblog api express版

build status Coverage Status Dependency Status devDependency Status

简介

Jackblog 是使用 Node.js + MongoDB + Redis + 其它客户端框架开发的个人博客系统,前后端分离,仿简书模板.
服务端有: express 版 , koa 版
客户端有: angular1.x 版 , angular2.x 版 , react 版 , vue 版
移动端有: react native 版, ionic2.0 版

此为服务端Express版, 为客户端提供api.

环境准备

node.js 4.0+
mognodb 3.0+
redis 2.8+

配置

  • 配置文件路径: ./server/config/env, 可将私有配置放入./server/config/env/private 下.
  • 七牛云存储配置
  qiniu:{
    app_key:"app_key",
    app_secret:"app_secret",
    domain:"domain",          //七牛配置域名
    bucket:"bucket"           //七牛空间名称  
  },

开发

$ git clone git@github.com:jackhutu/jackblog-api-express.git
$ cd jackblog-api-express
$ npm install
$ gulp serve

windows 用户注意事项

经亲测windows上开发没有任何问题, 测试环境如下:

  • windows 7 64位
  • mongodb 3.2.6
  • redis 2.8.24
  • Python 2.7
  • Microsoft Visual Studio C++ 2013

1, node-gyp
一定要全局安装好node-gyp, npm i -g node-gyp
这个库依赖python 2.7, vs2013. c++编译环境一定要配置好, 不然很多包都装不了.

2, redis
redis for windows 只支持64位的操作系统

线上布署

$ pm2 start process.json

使用docker容器部署所需的要环境变量

MONGO_PORT_27017_TCP_ADDR
MONGO_USERNAME
MONGO_PASSWORD
REDIS_PORT_6379_TCP_ADDR
REDIS_PORT_6379_TCP_PORT
REDIS_PASSWORD
QINIU_APP_KEY
QINIU_APP_SECRET
QINIU_APP_DOMAIN
QINIU_APP_BUCKET
GITHUB_CLIENT_ID
GITHUB_CLIENT_SECRET
GITHUB_CALLBACK_URL
WEIBO_CLIENT_ID
WEIBO_CLIENT_SECRET
WEIBO_CALLBACK_URL
QQ_CLIENT_ID
QQ_CLIENT_SECRET
QQ_CALLBACK_URL

测试

$ gulp test

配合客户端测试的测试模式

$ gulp serve:test

License

MIT