dgraph cluster docker-compose 安装
dgraph 是一款基于golang 的图数据库,使用了graphql+ 的查询方式
集群的安装官方也提供了对应的模版,比较简单
docker-compose 文件
我做了一些简单修改(数据存储的问题)
version: "3"
services:
zero:
image: dgraph/dgraph:latest
volumes:
- ./data0/data-volume:/dgraph
ports:
- 5080:5080
- 6080:6080
command: dgraph zero --my=zero:5080 --replicas 3
server_1:
image: dgraph/dgraph:latest
hostname: "server_1"
volumes:
- ./data1/data-volume:/dgraph
ports:
- 8080:8080
- 9080:9080
command: dgraph server --my=server_1:7080 --lru_mb=2048 --zero=zero:5080
server_2:
image: dgraph/dgraph:latest
hostname: "server_2"
volumes:
- ./data2/data-volume:/dgraph
ports:
- 8081:8081
- 9081:9081
command: dgraph server --my=server_2:7081 --lru_mb=2048 --zero=zero:5080 -o 1
server_3:
image: dgraph/dgraph:latest
hostname: "server_3"
volumes:
- ./data3/data-volume:/dgraph
ports:
- 8082:8082
- 9082:9082
command: dgraph server --my=server_3:7082 --lru_mb=2048 --zero=zero:5080 -o 2
ratel:
image: dgraph/dgraph:latest
hostname: "ratel"
ports:
- 8000:8000
command: dgraph-ratel
启动
docker-compose up -d
效果
http://localhost:8000

导入数据&&查询测试
- 导入数据
curl localhost:8080/mutate -H "X-Dgraph-CommitNow: true" -XPOST -d $'
{
set {
_:luke <name> "Luke Skywalker" .
_:leia <name> "Princess Leia" .
_:han <name> "Han Solo" .
_:lucas <name> "George Lucas" .
_:irvin <name> "Irvin Kernshner" .
_:richard <name> "Richard Marquand" .
_:sw1 <name> "Star Wars: Episode IV - A New Hope" .
_:sw1 <release_date> "1977-05-25" .
_:sw1 <revenue> "775000000" .
_:sw1 <running_time> "121" .
_:sw1 <starring> _:luke .
_:sw1 <starring> _:leia .
_:sw1 <starring> _:han .
_:sw1 <director> _:lucas .
_:sw2 <name> "Star Wars: Episode V - The Empire Strikes Back" .
_:sw2 <release_date> "1980-05-21" .
_:sw2 <revenue> "534000000" .
_:sw2 <running_time> "124" .
_:sw2 <starring> _:luke .
_:sw2 <starring> _:leia .
_:sw2 <starring> _:han .
_:sw2 <director> _:irvin .
_:sw3 <name> "Star Wars: Episode VI - Return of the Jedi" .
_:sw3 <release_date> "1983-05-25" .
_:sw3 <revenue> "572000000" .
_:sw3 <running_time> "131" .
_:sw3 <starring> _:luke .
_:sw3 <starring> _:leia .
_:sw3 <starring> _:han .
_:sw3 <director> _:richard .
_:st1 <name> "Star Trek: The Motion Picture" .
_:st1 <release_date> "1979-12-07" .
_:st1 <revenue> "139000000" .
_:st1 <running_time> "132" .
}
}
' | python -m json.tool | less
- 查询
类似graphql 的语法
{
me(func: has(starring)) {
name
}
}

说明
zero 组件运行了一个,实际生产需要运行多个实例(一般是奇数 1, 3, 5)
参考资料
https://docs.dgraph.io/get-started
https://docs.dgraph.io/deploy/
dgraph cluster docker-compose 安装的更多相关文章
- 手把手教你 Docker Compose安装DOClever
一.什么是Docker Compose以及Docker Compose的安装和使用 查看我的另外一篇博客:Docker Compose的安装和使用 二.DOClever是什么 DOClever是一个可 ...
- Docker Compose 安装 on centos7
本文演示如何在CentOS7上安装Docker Compose. 1 在线安装 1.1 下载安装包 $ curl -L https://github.com/docker/compose/releas ...
- Docker Compose安装以及入门
Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速在集群中部署分布式应用. Compose 简介 Compose 项目是 Docker 官方的开源 ...
- 使用 docker compose 安装 tidb
目标 : 单机上通过 Docker Compose 快速一键部署一套 TiDB 测试集群 前提条件: 1.centos版本在7.3 以上 2.安装git 3.安装docker Docker versi ...
- centos docker compose安装
docker compose离线安装 通过联网机器下载docker-compose离线安装包(参见Downloads部分) https://github.com/docker/compose/rele ...
- docker和docker compose安装使用、入门进阶案例
一.前言 现在可谓是容器化的时代,云原生的袭来,导致go的崛起,作为一名java开发,现在慌得一批.作为知识储备,小编也是一直学关于docker的东西,还有一些持续继承jenkins. 提到docke ...
- Docker Compose安装部署Jenkins
流水线可以让项目发布流程更加清晰,docker可以大大减少Jenkins配置. 1.前言 数据卷挂载到 /var 磁盘目录下,因为该磁盘空间较大,后面需要挂载容器数据卷,以防内存吃紧. 为了可以留存启 ...
- Docker Compose安装Registry后配置WebUI与客户端
场景 Docker 私服Registry简介与使用Docker-Compose安装Registry: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article ...
- docker compose安装gitea
docker-compose.yml version: "3.4" networks: gitea: external: false services: server: image ...
- Docker Compose 介绍安装
Compose介绍 Compose是一个定义和管理多容器的工具,也是一种容器编排工具,前身是Pig,使用Python语言编写.使用Compose配置文件描述多个容器应用的架构,biubiu使用什么镜像 ...
随机推荐
- ECharts学习(1)--toolbox(工具栏)
1. toolbox:这是ECharts中的工具栏.内置有导出图片.数据视图.动态类型切换.数据区域缩放.重置五个工具. 2. toolbox中的属性,不包含五个工具.里面最主要的就是feature这 ...
- 10046 event 知多少
10046 event 知多少 2017年5月10日 10:08 1.在当前session级打开trace 适用于SQL语句可以在新的session创建后再运行. 在session级收集10046 t ...
- java并发带返回结果的批量任务执行(CompletionService:Executor + BlockingQueue)
转载:http://www.it165.net/pro/html/201405/14551.html 一般情况下,我们使用Runnable作为基本的任务表示形式,但是Runnable是一种有很大局限的 ...
- python dict 构造函数性能比较
from time import time t1 = time() {i: "%d" % i for i in range(5000)} t2 = time() print(t2- ...
- JavaScript学习总结(五)——Javascript中==和===的区别
一.JavaScript"=="的作用 当==两边的内容是字符串时,则比较字符串的内容是否相等. 当==两边的内容是数字时,则比较数字的大小是否相等. 当==两边的内容是对象或者是 ...
- SQL Server 数据库获取架构信息
得到数据库存储过程列表: select * from dbo.sysobjects where OBJECTPROPERTY(id, N'IsProcedure') = 1 order by name ...
- 使用scrapy-redis构建简单的分布式爬虫
前言 scrapy是python界出名的一个爬虫框架.Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. 虽然scr ...
- SSH 获取GET/POST参数
在做项目的API通知接口的时候,发现在SSH框架中无法获取到对方服务器发来的异步通知信息.最后排查到的原因可能是struts2对HttpServletRequest进行了二次处理,那么该如何拿到pos ...
- 详解基本TCP套接字函数
以下讲解基本TCP套接字函数. 1.socket 函数 指定期望的通信协议类型. #include <sys/types.h> /* See NOTES */ #include ...
- webbench-1.5_hacking
/**************************************************************************** * * webbench-1.5_hacki ...