https://hub.docker.com/r/dgraph/dgraph/
https://github.com/dgraph-io/dgraph
https://docs.dgraph.io/get-started/
Dgraph 是一个可扩展的,分布式的,低延迟的图数据库,目标是提供 Google 生产水平的规模和吞吐量,在超过 TB 的结构数据里,为用户提供足够低延迟的实时查询。Dgraph 支持 GraphQL 作为查询语言,响应 JSON。
Dgraph集群由不同的节点(Zero,服务器和Ratel)组成,每个节点用于不同的目的。
Dgraph Zero控制Dgraph群集,将服务器分配给一个组,并在服务器组之间重新平衡数据。
Dgraph服务器托管谓词和索引。
Dgraph Ratel服务于用户界面来运行查询,突变和改变模式。
您至少需要一个Dgraph零点和一个Dgraph服务器才能开始。
Run dgraph zero
mkdir ~/zero # Or any other directory where data should be stored.
docker run -it -p 5080:5080 -p 6080:6080 -v ~/zero:/dgraph dgraph/dgraph:latest dgraph zero --my=HOSTIPADDR:5080
Run dgraph server
mkdir ~/server1 # Or any other directory where data should be stored.
docker run -it -p 7080:7080 -p 8080:8080 -p 9080:9080 -v ~/server1:/dgraph dgraph/dgraph:latest dgraph server --lru_mb=<typically one-third the RAM> --zero=HOSTIPADDR:5080 --my=HOSTIPADDR:7080
mkdir ~/server2 # Or any other directory where data should be stored.
docker run -it -p 7081:7081 -p 8081:8081 -p 9081:9081 -v ~/server2:/dgraph dgraph/dgraph:latest dgraph server --lru_mb=<typically one-third the RAM> --zero=HOSTIPADDR:5080 --my=HOSTIPADDR:7081 -o=1
Notice the use of -o for server2 to override the default ports for server2.
Run dgraph UI
docker run -it -p 8000:8000 dgraph/dgraph:latest dgraph-ratel
Note You can also use the :master tag when running docker image to get the nightly build. Though, nightly is thoroughly tested and could have unseen bugs.
docker-compose.yml
version: "3.2"
services:
zero:
image: dgraph/dgraph:latest
volumes:
- /data:/dgraph
ports:
- 5080:5080
- 6080:6080
restart: on-failure
command: dgraph zero --my=zero:5080
server:
image: dgraph/dgraph:latest
volumes:
- /data:/dgraph
ports:
- 8080:8080
- 9080:9080
restart: on-failure
command: dgraph server --my=server:7080 --lru_mb=2048 --zero=zero:5080
ratel:
image: dgraph/dgraph:latest
ports:
- 8000:8000
command: dgraph-ratel
签名:这个人很懒,什么也没有留下!