跳转至

基于 Docker 快速部署

NebulaGraph 提供了基于 Docker 的快速部署方式,可以在几分钟内完成部署。

按照以下步骤可以快速在 Docker Desktop 中部署 NebulaGraph 。

  1. 安装 Docker Desktop

    Caution

    不建议在 Windows 上使用 Docker Desktop,因为 Windows 上的 Docker Desktop 性能较差。详情请参见 #12401。如果在 Windows 端安装 Docker Desktop 需安装 WSL 2

  2. 在仪表盘中单击ExtensionsAdd Extensions打开Extensions Marketplace 搜索 NebulaGraph ,也可以点击 NebulaGraph 在 Docker Desktop 打开。

  3. 单击 Install 下载 NebulaGraph 。

    docker

    在有更新的时候,可以单击 Update 更新到最新版本。

    docker-update

  4. 单击 Open

  5. 在页面顶部,单击 Studio in Browser

  6. 使用基本 nGQL 语句。更多信息,请参见使用常用 nGQL(CRUD 命令)

视频介绍

使用 Docker Compose 可以基于准备好的配置文件快速部署 NebulaGraph 服务,仅建议在测试 NebulaGraph 功能时使用该方式。

前提条件

  • 启动主机上的 Docker 服务。
  • 如果已经通过 Docker Compose 在主机上部署了另一个版本的 NebulaGraph,为避免兼容性问题,需要删除目录nebula-docker-compose/data

部署 NebulaGraph

  1. 通过 Git 克隆nebula-docker-compose仓库的3.8.0分支到主机。

    Danger

    master分支包含最新的未测试代码。请不要在生产环境使用此版本。

    $ git clone -b release-3.8 https://github.com/vesoft-inc/nebula-docker-compose.git
    

    Note

    Docker Compose 的x.y版本对齐内核的x.y版本,对于内核z版本,Docker Compose 不会发布对应的z版本,但是会拉取z版本的内核镜像。

  2. 切换至目录nebula-docker-compose

    $ cd nebula-docker-compose/
    
  3. 执行如下命令启动 NebulaGraph 服务。

    Note

    [nebula-docker-compose]$ docker-compose up -d
    Creating nebula-docker-compose_metad0_1 ... done
    Creating nebula-docker-compose_metad2_1 ... done
    Creating nebula-docker-compose_metad1_1 ... done
    Creating nebula-docker-compose_storaged0_1 ... done
    Creating nebula-docker-compose_storaged1_1 ... done
    Creating nebula-docker-compose_storaged2_1 ... done
    

    Compatibility

    从 3.1 版本开始,Docker-compose 会自动启动 NebulaGraph Console 镜像的容器,并将 Storage 主机增加至集群中(即ADD HOSTS命令)。

    Note

    上述服务的更多信息,请参见架构总览

连接 NebulaGraph

连接 NebulaGraph 有两种方式:

  • 在容器外通过 Nebula Console 连接。因为容器的配置文件中将 Graph 服务的外部映射端口也固定为 9669,因此可以直接通过默认端口连接。详情参见连接 NebulaGraph
  • 登录安装了 NebulaGraph Console 的容器,然后再连接 Graph 服务。本小节介绍这种方式。
  1. 使用docker-compose ps命令查看 NebulaGraph Console 容器名称。

    $ docker-compose ps
              Name                         Command             State                 Ports
    ----------------------------------------------------------------------------------------------
    nebula-docker-compose_console_1     sh -c sleep 3 &&          Up
                                      nebula-co ...
    ......
    
  2. 进入 NebulaGraph Console 容器中。

    $ docker exec -it nebula-docker-compose_console_1 /bin/sh
    / #
    
  3. 通过 NebulaGraph Console 连接 NebulaGraph 。

    / # ./usr/local/bin/nebula-console -u <user_name> -p <password> --address=graphd --port=9669
    

    Note

    默认情况下,身份认证功能是关闭的,只能使用已存在的用户名(默认为root)和任意密码登录。如果想使用身份认证,请参见身份认证

  4. 查看集群状态。

    nebula> SHOW HOSTS;
    +-------------+------+----------+--------------+----------------------+------------------------+---------+
    | Host        | Port | Status   | Leader count | Leader distribution  | Partition distribution | Version |
    +-------------+------+----------+--------------+----------------------+------------------------+---------+
    | "storaged0" | 9779 | "ONLINE" | 0            | "No valid partition" | "No valid partition"   | "3.8.0" |
    | "storaged1" | 9779 | "ONLINE" | 0            | "No valid partition" | "No valid partition"   | "3.8.0" |
    | "storaged2" | 9779 | "ONLINE" | 0            | "No valid partition" | "No valid partition"   | "3.8.0" |
    +-------------+------+----------+--------------+----------------------+------------------------+---------+
    

执行两次exit可以退出容器。

  1. 使用基本 nGQL 语句。更多信息,请参见使用常用 nGQL(CRUD 命令)

最后更新: 2025年11月18日