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. PHP 使用 pdo 操作oracle数据库 报错

    ## SELECT UNID,NAME,NAME_XML WHERE UNID>=10 AND UNID<=15 ## 在10到15这5条数据中不为空数据php: symbol looku ...

  2. Udp客户端与服务通讯

    使用UDP与服务端通讯时候,同样需要先启用udp服务端监控,当服务端启动成功,在启动客户端 首先UDP服务端类,代码如下: public class UdpServerTest { public vo ...

  3. (转)消息队列 Kafka 的基本知识及 .NET Core 客户端

    原文地址:https://www.cnblogs.com/savorboard/p/dotnetcore-kafka.html 前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka 是 ...

  4. Java调用Http/Https接口(6)--RestTemplate调用Http/Https接口

    RestTemplate是Spring提供的用于访问Http接口的客户端,提供同步的API:在将来的Spring版本中可能会过时,将逐渐被WebClient替代.文中所使用到的软件版本:Java 1. ...

  5. IDEA中Tomcat热部署不生效问题解决办法

    IDEA中Tomcat热部署不生效问题解决办法 1.设置完热部署后 2.一定要在Debug模式下运行不要点RUN!!!!!!!!!!!!!!!!!

  6. 内部属性[[class]]

    1. 对象的[[class]]属性 所有typeof返回值为“object”的对象(如数组)都包含一个内部属性[[class]],这个属性无法直接访问,一般通过Object.prototype.toS ...

  7. 前端框架 Vue.js 概述

    Vue.js 是什么 图片 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视 ...

  8. Hbase架构与原理(转)

    Hbase架构与原理 HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利 ...

  9. CentOS7安装Supervisor3.1.4

    supervisord 负责管理进程的server端,配置文件是/etc/supervisor/supervisord.conf supervisorctl client端的命令行工具,管理子进程,配 ...

  10. 小程序页面收录 sitemap

    微信现已开放小程序内搜索,你的小程序页面将可能展示在微信搜索等多个公开场景中.当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引. 若小程序中存在不适合展示信息如用户个人信息.商 ...