Public | Automated Build

Last pushed: 8 months ago
Short Description
赢在云端用户门户
Full Description

赢在云端先锋版Portal开发文档:cloud:

说明:先锋版不考虑各种兼容性问题,依赖项较少,用于浏览器测试。

启动镜像:sudo docker run -d -p 80:80 --name incloud canfeit/incloud:edge

镜像环境: OpenResty Node.js

  • 技术栈(ES6全栈):

    • 标准:ES6
    • 前端:bootstap+AdminLTE(UI)、React(页面渲染)、jQuery-File-Upload(文件上传)、nedb(数据库)、Clipboard(剪贴板操作)
    • 服务端:nodejs(开发语言)、ejs(模板引擎)、koa2(MVC)
    • 工具:md5-o-matic(MD5哈希校验,取"数字指纹"检查一致性)
  • 设计说明:

    1. 本项目全栈采用ES2015(ES6)开发;
    2. 服务端采用Koa2开发,主机管理控制台部分采用 RESTful+SPA 架构,由react实现browser端页面渲染,Babel/Webpack实现react服务端编译打包,保证扩展性和网页加载效率;产品服务介绍部分采用MVC架构,nunjucks 实现server端页面渲染,保证SEO;
    3. 页面采用AdminLTE设计,实现移动端适配;
    4. 使用gulp实现自动化构建,bower进行前端包管理。
  • 项目运行:

    开发环境:node4+、git、nginx

    nginx配置:nginx.conf

    linux:/etc/nginx

    osx:/usr/local/etc/nginx

    location /api {
      proxy_set_header Date $http_request_date;
      proxy_pass [Cloud_API]; 
    }
    location / {
      proxy_pass http://localhost:91;
    }
    

    启动nginx,npm i &&cd target/portal &&npm start

浏览器访问: http://localhost

测试范围

  • safari/chrome/firefox/edge/国产移动浏览器
  • 登录,注销,key copy,云主机管理,移动QQ/微信 indexeddb 功能测试

生产环境部署

  1. 部署前注意更新 package.json public/sw.js 版本号并重新编译
  2. 上传target/portal到生产环境ubuntu,mv portal incloud&&cd incloud
  3. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash
  4. nvm install node
  5. export NODE_ENV=production &&npm i &&npm i -g pm2 &&pm2 start server.js -i 0
  6. sudo su -c "env PATH=$PATH pm2 startup ubuntu -u ubuntu --hp /home/ubuntu" &&pm2 save
  7. 安装配置启动nginx

    sudo apt-get update &&sudo apt-get install nginx -y

    sudo vi /etc/nginx/sites-available/default

    location /api {
     proxy_set_header Date $http_request_date;
     proxy_pass https://192.168.20.9/;
    }
    location / {
     proxy_pass http://localhost:8080/;
    }
    
  8. sudo nginx -s reload

安装nginx

macos

安装brew:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装nginx: brew install nginx

centos

sudo rpm -Uvh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

sudo yum install -y nginx

项目标签管理

#加tag
git tag -a v1 -m 'version 1'
git push origin --tags
#删除标签
git tag -d $(git tag)
git push origin --delete tag v1

git分支

git clone https://github.com/canfeit/incloud.git
git branch -a
git checkout -t origin/edge
Docker Pull Command
Owner
canfeit
Source Repository

Comments (0)