space-cloud 学习一 基本试用
space-cloud 是一个支持多数据库,以下是一个简单的基于官方文档的试用
使用docker-compose 运行
环境准备
- 下载docker-compose文件
wget https://raw.githubusercontent.com/spaceuptech/space-cloud/master/install-manifests/quick-start/docker-compose/mongo/docker-compose.yaml
- 内容
稍有修改,添加了mysql 以及postgresql 的支持
version: '3.6'
services:
postgres:
image: postgres:10-alpine
ports:
- "5435:5432"
environment:
- "POSTGRES_PASSWORD:dalong"
mysql:
image: mysql:5.7.16
ports:
- 3306:3306
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
environment:
MYSQL_ROOT_PASSWORD: dalongrong
MYSQL_DATABASE: space-cloud
MYSQL_USER: space-cloud
MYSQL_PASSWORD: dalongrong
TZ: Asia/Shanghai
mongo:
image: mongo:3
ports:
- "27017:27017"
space-cloud:
image: spaceuptech/space-cloud
ports:
- "4122:4122"
- "4124:4124"
- "4126:4126"
- "4128:4128"
depends_on:
- "mongo"
environment:
## The DEV environment lets you use Mission Control (Admin UI) without login
## Change the dev mode to false if you want a login to your Mission Control UI
DEV: "true"
## Uncomment next lines to change the login credentials of Mission Control UI
# ADMIN_USER: "admin"
# ADMIN_PASS: "123"
# ADMIN_SECRET: "some-secret" # This is the JWT secret used for login authentication in Mission Control
运行
- 启动
docker-compose up -d
- 效果
使用流程
创建mongodb的实例
- 功能列表
- 操作步骤
创建project、配置数据库连接,操作(rule,数据库表,集合。。。)
具体操作(mongodb)
- 创建project
web 管理地址:http://localhost:4122/mission-control/welcome
- 配置mongo 连接
- 效果
- 操作api
插入测试数据
{
"name" : "dalong"
}
查询数据
目前graphql 的自省功能还不好使,期待官方的完成,同时集成的graphiql 布局也有点问题
具体操作(postgres)
注意对于sql 类型的数据库需要点击
set up database
, 目前体验不太好用,应该是有bug
- 添加数据库连接
- 添加schema
保存之后的效果
- 插入数据
INSERT INTO "appdemo"."appdemo"("id","name")
VALUES
(E'1',E'dddd');
- 查询
具体操作(mysql)
注意对于sql 类型的数据库需要点击
set up database
, 目前体验不太好用,应该是有bug
- 添加连接
- 添加数据表
- 效果
- 插入数据
INSERT INTO appdemo.demo
(id, name)
VALUES('1', 'demoapp');
- 查询
说明
目前的体验不太好,对于sql 类型的数据连接配置,database 没有清晰表明,原以为自己配置的database 可以生效,但是结果确实project 的name,同时在
添加table 的时候不稳定(有bug),graphiql 目前的自省功能基本不可用,总的来说是一个很不错的项目,还有待演进,目前官方文档还是比较全的,就是
功能试用上不太好,因为基于golang开发,可以先学习下源码。
参考资料
https://github.com/spaceuptech/space-cloud#quick-start
https://spaceuptech.com/