Skip to content

Latest commit

 

History

History
246 lines (177 loc) · 11.4 KB

README_zh-CN.md

File metadata and controls

246 lines (177 loc) · 11.4 KB


中文 | English
能够容纳千亿个顶点和万亿条边,并提供毫秒级查询延时的图数据库解决方案

WeiXin Zhihu SegmentFault Sina Weibo nebula star nebula fork codecov

使用 Docker Compose 部署 Nebula Graph

Docker Compose 可以帮助您快速部署 Nebula Graph 服务。

前提条件

部署流程

  1. 使用 Git 将 nebula-docker-compose 库拷贝到您的主机。

    • 安装 Nebula Graph 1.0 版本请拷贝 v1.0 分支。
    $ git clone --branch v1.0 https://github.com/vesoft-inc/nebula-docker-compose.git
    • 安装 Nebula Graph 2.0 版本请拷贝 master 分支。
    $ git clone https://github.com/vesoft-inc/nebula-docker-compose.git
  2. 进入 nebula-docker-compose 目录。

    $ cd nebula-docker-compose/
  3. 启动所有 Nebula Graph 服务。

    $ docker-compose up -d

    以下返回信息表明服务已启动:

    Creating nebula-docker-compose_metad2_1 ... done
    Creating nebula-docker-compose_metad1_1 ... done
    Creating nebula-docker-compose_metad0_1 ... done
    Creating nebula-docker-compose_storaged2_1 ... done
    Creating nebula-docker-compose_graphd_1    ... done
    Creating nebula-docker-compose_storaged0_1 ... done
    Creating nebula-docker-compose_storaged1_1 ... done

    说明:如需了解上述服务的详情,请参见 Nebula Graph 设计与架构

  4. 连接到 Nebula Graph。

    Nebula-console 是 Nebula Graph 的原生命令行客户端。在当前步骤中,Docker 会按下方命令中指定的 Docker Hub 路径将 nebula-console 镜像文件下载到本地主机,并用其连接 Nebula Graph 的 graphd 服务。您也可以使用其它客户端连接Nebula Graph,例如 Nebula Graph Studio 以及其它编程语言的客户端

    • 连接到 Nebula Graph 1.0 版本:
    $ docker run --rm -ti --network=host vesoft/nebula-console:nightly -u <user> -p <password> --addr=127.0.0.1 --port=3699
    • 连接到 Nebula Graph 2.0 版本:
    $ docker run --rm -ti --network nebula-docker-compose_nebula-net --entrypoint=/bin/sh vesoft/nebula-console:v2-preview-nightly
    docker> nebula-console -u <user> -p <password> --address=graphd --port=9669
    

    说明:Nebula Graph 默认不开启身份验证功能,您可以使用任意用户名和密码连接到 Nebula Graph。如需开启验证,请参见身份验证

    显示以下信息表明您已成功连接到 Nebula Graph:

    Welcome to Nebula Graph (Version 5d10861)
    
    (user@127.0.0.1) [(none)]>

查看 Nebula Graph 服务状态和端口

您可以使用如下命令查看 Nebula Graph 服务的详细信息,包括服务状态及端口号等:

$ docker-compose ps

返回结果的示例如下:

Name                     Command                       State                                                   Ports
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
nebula-docker-compose_graphd_1      ./bin/nebula-graphd --flag ...   Up (health: starting)   0.0.0.0:32867->13000/tcp, 0.0.0.0:32866->13002/tcp, 3369/tcp, 0.0.0.0:3699->3699/tcp
nebula-docker-compose_metad0_1      ./bin/nebula-metad --flagf ...   Up (health: starting)   0.0.0.0:32865->11000/tcp, 0.0.0.0:32864->11002/tcp, 45500/tcp, 45501/tcp
nebula-docker-compose_metad1_1      ./bin/nebula-metad --flagf ...   Up (health: starting)   0.0.0.0:32863->11000/tcp, 0.0.0.0:32862->11002/tcp, 45500/tcp, 45501/tcp
nebula-docker-compose_metad2_1      ./bin/nebula-metad --flagf ...   Up (health: starting)   0.0.0.0:32861->11000/tcp, 0.0.0.0:32860->11002/tcp, 45500/tcp, 45501/tcp
nebula-docker-compose_storaged0_1   ./bin/nebula-storaged --fl ...   Up (health: starting)   0.0.0.0:32879->12000/tcp, 0.0.0.0:32877->12002/tcp, 44500/tcp, 44501/tcp
nebula-docker-compose_storaged1_1   ./bin/nebula-storaged --fl ...   Up (health: starting)   0.0.0.0:32876->12000/tcp, 0.0.0.0:32872->12002/tcp, 44500/tcp, 44501/tcp
nebula-docker-compose_storaged2_1   ./bin/nebula-storaged --fl ...   Up (health: starting)   0.0.0.0:32873->12000/tcp, 0.0.0.0:32870->12002/tcp, 44500/tcp, 44501/tcp

说明:Nebula Graph v1.x 默认通过 3699 端口向客户端提供服务。Nebula Graph v2.x 默认通过 9669 端口向客户端提供服务。如需使用其他端口,请更改 nebula-docker-compose 目录下的 docker-compose.yaml 配置文件。

查看服务数据与日志

Nebula Graph 的服务数据和日志被持久化地保存在主机的 nebula-docker-compose/datanebula-docker-compose/logs 目录中。

目录结构如下所示:

nebula-docker-compose/
  |-- docker-compose.yaml
  |-- data
  |     |- meta0
  |     |- meta1
  |     |- meta2
  |     |- storage0
  |     |- storage1
  |     `- storage2
  `-- logs
        |- meta0
        |- meta1
        |- meta2
        |- storage0
        |- storage1
        |- storage2
        `- graph

停止 Nebula Graph 服务

您可以通过以下命令停止 Nebula Graph 服务:

$ docker-compose down -v

以下返回结果表明您已成功停止 Nebula Graph 服务:

Stopping nebula-docker-compose_storaged1_1 ... done
Stopping nebula-docker-compose_storaged0_1 ... done
Stopping nebula-docker-compose_graphd_1    ... done
Stopping nebula-docker-compose_storaged2_1 ... done
Stopping nebula-docker-compose_metad0_1    ... done
Stopping nebula-docker-compose_metad1_1    ... done
Stopping nebula-docker-compose_metad2_1    ... done
Removing nebula-docker-compose_storaged1_1 ... done
Removing nebula-docker-compose_storaged0_1 ... done
Removing nebula-docker-compose_graphd_1    ... done
Removing nebula-docker-compose_storaged2_1 ... done
Removing nebula-docker-compose_metad0_1    ... done
Removing nebula-docker-compose_metad1_1    ... done
Removing nebula-docker-compose_metad2_1    ... done
Removing network nebula-docker-compose_nebula-net

安装 Nebula Graph 的其它方法

常见问题

如何更新 Nebula Console 客户端?

要更新 Nebula Console 客户端,在 nebula-docker-compose 目录使用 docker pull 命令。例如,如果您想更新 Nebula Graph 1.0 版本的 Nebula Console,运行以下命令。

docker pull vesoft/nebula-console:nightly

如果您想更新 Nebula Graph 2.0 版本的 Nebula Console,运行以下命令。

docker pull vesoft/nebula-console:v2-nightly

如何升级 Nebula Graph?

要升级 Nebula Graph,请更新 Nebula Graph docker 镜像并重启服务。

  1. nebula-docker-compose 目录下,运行 docker-compose pull 更新 Nebula Graph docker 镜像。

注意:在停止 Nebula Graph 服务之前,请确保您已经备份了所有重要数据。

  1. 运行 docker-compose down 命令停止 Nebula Graph 服务。

  2. 运行 docker-compose up -d 命令重新启动 Nebula Graph 服务。

为什么更新 nebula-docker-compose 仓库后,无法通过 3699 端口连接到 Nebula Graph?

Nebula Graph 2.0.0-RC 版本发布后,默认连接端口从 3699 改为 9669。更新仓库后,若要连接 Nebula Graph,请使用 9669 端口或修改 docker-compose.yaml 文件中的端口号。

为什么更新 nebula-docker-compose 仓库后无法访问数据?

如果您在 2021 年 1 月 4 日之后更新了 nebula-docker-compose 仓库,并且未删除之前的数据,请修改 docker-compose.yaml 文件,将端口号改为之前的端口号,再连接到 Nebula Graph。

下一步

您可以进行创建图空间和插入数据等操作,详情请参见 Nebula Graph 快速入门