cube.js 官方为我们也提供了backeng 部署的模型,为了测试方便以下是一个使用docker-compose 运行的demo

项目是一个集成gitbase 的demo,实际可以按照自己的项目修改,同时集成了redis cache,gitbase-web

环境准备

  • 项目结构
├── README.md
├── cube
│ ├── Dockerfile
│ ├── index.js
│ ├── package.json
│ └── schema
│ ├── Blobs.js
│ ├── CommitBlobs.js
│ ├── CommitFiles.js
│ ├── CommitPerMonth.js
│ ├── CommitTrees.js
│ ├── Commits.js
│ ├── Committer-Repos.js
│ ├── Files.js
│ ├── RefCommits.js
│ ├── Refs.js
│ ├── Remotes.js
│ ├── Repositories.js
│ ├── TopNCommitters.js
│ ├── TopNRepoCommit.js
│ └── TreeEntries.js
├── docker-compose-bblfsh.yaml
└── docker-compose.yaml
  • docker-compose.yaml

    项目中包含了两个,有一个包含了bblfsh ,主要说明不包含bblfsh的

version: "3"
services:
gitbase-web:
image: srcd/gitbase-web:latest
environment:
- "GITBASEPG_DB_CONNECTION=root@tcp(gitbase:3306)/none"
ports:
- "8080:8080"
redis_db:
image: redis
ports:
- "6379:6379"
cube:
build: ./cube
env_file: .env
ports:
- "4000:4000"
volumes:
- ./cube/schema:/usr/src/app/schema
command: node index.js
gitbase:
container_name: gitbase
hostname: gitbase
image: srcd/gitbase:v0.20.0-rc2
volumes:
- "./git-demos:/opt/repos"
ports:
- "3306:3306"
  • cube 项目docker 配置

    cube 目录包含了需要的dockerfile

Dockerfile:
FROM node:10-alpine
LABEL AUTHOR="dalong"
LABEL EMAIL="1141591465@qq.com"
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 4000
  • cube nodejs 项目

    nodejs 项目依赖的npm 包,以及启动入口

package.json:
{
"name": "gitbase-demo",
"version": "0.0.1",
"private": true,
"scripts": {
"dev": "./node_modules/.bin/cubejs-dev-server"
},
"dependencies": {
"@cubejs-backend/mysql-driver": "^0.9.2",
"@cubejs-backend/server": "^0.9.2"
}
}
index.js:
const CubejsServer = require('@cubejs-backend/server');
const server = new CubejsServer();
server.listen().then(({ port }) => {
console.log(`

cube.js 学习 cube docker-compose 运行的更多相关文章

  1. cube.js 学习 cube 连接mongodb 试用

    cube.js 对于mongodb 的连接是通过mongodb bi connector(mysql 协议)处理的,以下为简单的试用 安装mongo bi connector 这个玩意用docker ...

  2. cube.js 学习(八)backend部署模式

    cube.js 从设计上就进行了系统上的分层,backend,frontend,backend 是cube.js 的核心 对于cube.js backend 的部署官方也提供了好多中方法 部署模型 s ...

  3. cube.js 学习(十)cube 来自官方的学习网站

    尽管cube.js 包含了一个doc 站点,但是资料不是很全,同时如果查看了cube github 代码中的一些demo的话,发现还是很不错的 但是一些实践没有在文档展现出来,还好我们可以从cube ...

  4. cube.js 学习(一)简单项目创建

    cube.js 是一个很不错的模块化分析框架,基于schema生成sql 同时内置可代码生成,可以快速的搞定 web 分析应用的开发 安装cli 工具 npm install -g cubejs-cl ...

  5. cube.js 学习(十一)cube + gitbase 分析git 代码

    这个是一个简单的demo,使用gitbase+cube 分析git 仓库代码 需求 我们平时使用的gitlab,或者gogs 等git 仓库管理工具,有自己的管理强项,但是对于分析上可能就不是那么强大 ...

  6. cube.js 学习(七)cube.js type 以及format 说明

      cube.js 对于measure以及dimension 提供了丰富的数据类型,基本满足我们常见应用的开发,同时对于不同类型也提供了 格式化的操作 measure类型 number 格式 purc ...

  7. cube.js 学习(五)cube.js joins 说明

      cube.js 也支持join, 参考格式 joins: { TargetCubeName: { relationship: `belongsTo` || `hasMany` || `hasOne ...

  8. cube.js 学习(四)cube.js cube 说明

      cube 是cube.js data schema 的核心,里面定义了生成sql 的说明 一个比较全的schema 例子 cube(`Users`, { sql: `select * from u ...

  9. cube.js 学习(三)cube.js data schema

    cube.js的 data schema 类似graphql 的type 定义,但是cube.js 的data schema 更偏向于dsl, 其中抽象了进行数据分析应用开发中的东西,自己提炼了mea ...

随机推荐

  1. Python输错4次用户名密码需要输入验证码

    time = 0 login_success = False USER_NAME = "alex" PWD = "alex123" CHECK_CODE = & ...

  2. Hive学习笔记(二)—— 安装配置

    Hive安装配置及基本操作 1. Hive安装及配置 (1). 上传文件到Hadoop102节点,解压到/opt/moudle (2). 修改/opt/module/hive/conf目录下的hive ...

  3. texlive2019安装

    TeX Live 是 TUG (TeX User Group) 发布并维护的的 TeX 系统,可以称得上是TeX的官方系统,官网为:https://www.tug.org/texlive/ 1.通过最 ...

  4. Windows10 上安装 Anaconda 后命令提示符(cmd)下无法执行(python / pip)命令解决方案

    原文:https://blog.csdn.net/qq_38644840/article/details/85064408 安装Anaconda后一段时间内能够在命令提示符(cmd)界面运行pytho ...

  5. Html-元素类型笔记

    注意点: 元素类型分为 块级元素 和 行内元素 块级元素: 在网页中以块的形式显示,默认情况都会占据一行,两个相邻的块级元素不会出现并列显示的元素,按照顺序自上而下排列. 块级元素可以定义自己的宽度和 ...

  6. Spring Data Jpa 复杂查询总结

    实体类 @Entity @Table(name = "t_hotel") @Data public class THotel { @Id private int id; priva ...

  7. maven设定项目编码

    今天在DOS下执行mvn compile命令时报错说缺少必要符号,事实上根本就没有缺少,但何以如此呢,为啥eclipse在编译时就没有这问题呢? 原因是编码的问题造成的! eclipse在编译的使用使 ...

  8. Eclipse不支持tomcat8_compiler编译级别选不到1.8

    -------------------------------------------------------------- Eclipse不支持tomcat8 如果你要使用tomcat8.0+版本的 ...

  9. Cannot assign to read only property 'exports' of object '#<Object>' ,文件名大小写问题!!!

    有些坑不知道怎么就掉进去,可能一辈子都爬不起来!!! 一.错误描述 昨天还好好的,今天早上来从git获取了一下别人提交的代码就出错了!而提交代码的人 运行一点错误都没有!!! cya@KQ-101 M ...

  10. Linux 系统安全相关

    本篇关于Linux的一些安全知识,主要就是与账号相关的安全. 账户文件锁定 当服务器中的用户账号已经固定,不在进行更改,可锁定账户文件.锁定后,无法添加.删除账号,也无法更改密码等. 锁定账户文件 c ...