QLoo graphql engine 学习一 基本试用(docker&&docker-compose)
说明:使用docker-compose 进行安装
代码框架
使用命令行工具创建
qlooctl install docker qloo-docker
运行qloo&&gloo
- 启动
cd ./qloo-docker
docker-compose up
- 效果

配置glooctl &&qlooctl工具
- 下载
https://github.com/solo-io/qloo/releases
https://github.com/solo-io/gloo/releases
- 配置环境变量
mac
cat ~/.bash_profile
export PATH=$PATH:/Users/dalong/Downloads/qloo
基本demo
- 启动demo 服务
docker run -d -p 1234:8080 soloio/petstore-example:latest
创建petstore 的gloo upstream
使用使用命令行工具,或者直接编写文件,注意qloo-docker_default 或者根据目录命名修改
- 使用glooctl
cat << EOF | glooctl upstream create -f -
name: petstore
type: static
spec:
hosts:
# gateway ip for the docker network
- addr: $(docker inspect qloo-docker_default -f '{{ (index .IPAM.Config 0).Gateway }}')
port: 1234
EOF
- 使用配置文件
cat > ./_gloo_config/upstreams/petstore.yaml << EOF
name: petstore
type: static
spec:
hosts:
# gateway ip for the docker network
- addr: $(docker inspect qloo-docker_default -f '{{ (index .IPAM.Config 0).Gateway }}')
port: 1234
EOF
查看petsore 函数
glooctl upstream get
效果

创建graphql schema
- petstore.graphql
# The query type, represents all of the entry points into our object graph
type Query {
pets: [Pet]
pet(id: Int!): Pet
}
type Mutation {
addPet(pet: InputPet!): Pet
}
type Pet{
id: ID!
name: String!
status: Status!
}
input InputPet{
id: ID!
name: String!
tag: String
}
enum Status {
pending
available
}
- 上传schema(qlooctl 工具)
qlooctl schema create petstore -f petstore.graphql
- 查看注册的resolvermap(实际上就是graphql 的schema &&query && Mutation )
qlooctl resolvermap get petstore-resolvers -o yaml
效果

注册schema 的resolver
# register findPetById for Query.pets (specifying no arguments)
qlooctl resolvermap register -u petstore -f findPetById Query pets
# register a resolver for Query.pet
qlooctl resolvermap register -u petstore -f findPetById Query pet
# register a resolver for Mutation.addPet
# the request template tells QLoo to use the Variable "pet" as an argument
qlooctl resolvermap register -u petstore -f addPet Mutation addPet --request-template '{{ marshal (index .Args "pet") }}'
使用playground 查看接口

参考资料
https://github.com/solo-io/qloo/blob/master/docs/getting_started/docker/1.md
https://qloo.solo.io/
QLoo graphql engine 学习一 基本试用(docker&&docker-compose)的更多相关文章
- QLoo graphql engine 学习二 基本试用(kubernetes)
已经测试过docker&& docker-compose 的运行模式,下面测试下kubernetes的运行模式 kubernetes 我使用docker for mac qloo 安装 ...
- QLoo graphql engine 学习三 架构
一张官方的参考图 说明 Storage Layer API 参考了kubernetes 的设计 qloo 组成 qloo 有qloo 服务以及envoy proxy 组合而成,envoy proxy ...
- QLoo graphql engine了解
参考架构图 处理流程 使用gloo注册服务api 发现断电以及serverless 函数 更新graphql schema 在qloo的resolvermap 中连接schema定义的字段 特性 不用 ...
- docker学习笔记(2)——docker常用命令
参考博客: 1.官网教程:https://docs.docker.com/reference/ 可以一边敲命令一边对照官网学习,也可以通过阅读docker --help来学习 2..视频教程:http ...
- Vue项目中GraphQL入门学习与应用
1.GraphQL是什么,能干什么? 正如官网所说,GraphQL是一种用于API查询的语言.Facebook 的移动应用从 2012 年就开始使用 GraphQL.GraphQL 规范于 2015 ...
- Docker学习(三)认识Docker和常用命令
Docker学习(三)认识Docker和常用命令 Docker体系结构 docker服务端,作为服务的提供方,核心进程 docker daemon,所有docker命令都是通过这个进程完成的 REST ...
- Docker - Docker Engine 结构结构概述
概述 Docker Engine 结构的简单描述 ref docker 实战 第一本 docker 书 1. docker 版本 1. 版本 Docker Engine - Community 概述 ...
- 【开发工具 docker】值得学习的应用容器引擎docker安装
概述: Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何 ...
- [Docker] docker 基础学习笔记3(共6篇)
首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...
随机推荐
- "字节跳动杯"2018中国大学生程序设计竞赛-女生专场 Solution
A - 口算训练 题意:询问 $[L, R]$区间内 的所有数的乘积是否是D的倍数 思路:考虑分解质因数 显然,一个数$x > \sqrt{x} 的质因子只有一个$ 那么我们考虑将小于$\sqr ...
- java 的异常处理
一.异常的概念: java 中的异常通常指的是在运行期出现的错误,这样的错误也是比较难以调试的,解决问题的时候注意观察出现错误的名字和行号最重要 下面看这个例子: import java.io.*; ...
- [UI基础][实现]九宫格之应用程序管理
[目标] 1.完成下图所示的View,View中的图片.文字数据从app.list文件读出. 2.思考代码哪里可以进行优化. [分析] 1.创建控件 整个View分12个部分,其中包含一个 UIIma ...
- Java序列化(Serialization)
关于Java的序列化的文章在网上已经够多了,在这里写关于Java序列化的文章是对自己关于这方面的的一种总结,结合以前的开发经验与网上的资料,写了这篇文章,对自己是有着巩固记忆的作用,也希望能够对大家有 ...
- kali_install_complete_no_sound
参考:http://tieba.baidu.com/p/4343219808 用pulseaudio --start会看到一些信息,提示类似root用户之类的 我是用下面这个方法搞定的 systemc ...
- String StringBuilder StringBuffer 对比 总结得非常好
转自:http://www.iteye.com/topic/522167 作者:每次上网冲杯Java时,都能看到关于String无休无止的争论.还是觉得有必要让这个讨厌又很可爱的String美眉,赤裸 ...
- luogu P1025 数的划分
https://www.luogu.org/problem/show?pid=1025 n的k划分 且不出现划分成0的情况 可以 分为两种情况 所有划分的数 都大于1的情况 至少划分的数里面有1的情 ...
- POJ Stockbroker Grapevine(floyd)
https://vjudge.net/problem/POJ-1125 题意: 题意不是很好理解,首先输入一个n,表示有n个股票经纪人,接下来输入n行,每行第一个数m为该股票经纪人认识的经纪人数,然后 ...
- 读写 Excel 工作表
导入诸如 CSV 之类文本格式的数据的优点是不需要依靠某些特定软件来读取数据,并且文件具有可读性,即软件中性.然而,它的缺点也很明显——我们不能直接对文本编辑器中的数据执行计算操作,因为这些内容是纯文 ...
- c# lambda表达式学习
1. 普通绑定: public void button1_Click(object sender, EventArgs e) { MessageBox.Show("ok"); } ...
