这篇文章主要介绍如何使用Docker构建Nebula Graph源码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
Nebula Graph 是开源的高性能分布式图数据库。项目使用 C++ 语言开发,cmake
工具构建。其中两个重要的依赖是 Facebook 的 Thrift RPC 框架和
folly 库.
由于项目采用了 C++ 14 标准开发,需要使用较新版本的编译器和一些三方库。虽然 Nebula Graph 官方给出了一份 开发者构建指南,但是在本地构建完整的编译环境依然不是一件轻松的事。
Nebula Graph 依赖较多,且一些第三方库需本地编译安装,为了方便开发者本地编译项目源码, Nebula Graph 官方为大家提供了一个预安装所有依赖的 docker 镜像)。开发者只需如下的三步即可快速的编译 Nebula Graph 工程,参与 Nebula Graph 的开源贡献:
本地安装好 Docker
将
vesoft/nebula-dev
镜像
pull
到本地
$ docker pull vesoft/nebula-dev
运行
Docker
并挂载 Nebula 源码目录到容器的
/home/nebula
目录
$ docker run --rm -ti -v {nebula-root-path}:/home/nebula vesoft/nebula-dev bash
感谢社区伙伴 @阿东 提的建议,把上面的 {nebula-root-path} 替换成你 Nebula Graph 实际 clone 的目录
为了避免每次退出 docker 容器之后,重新键入上述的命令,我们在
vesoft-inc/nebula-dev-docker 中提供了一个简单的
build.sh
脚本,可通过
./build.sh /path/to/nebula/root/
进入容器。
使用
cmake
构建 Nebula 工程
docker> mkdir _build && cd _build docker> cmake .. && make -j2 docker> ctest # 执行单元测试
Nebula 项目目前主要采用静态依赖的方式编译,加上附加的一些调试信息,所以生产的一些可执行文件会比较占用磁盘空间,建议小伙伴预留 20G 以上的空闲空间给 Nebula 目录 :)
由于 Docker 镜像文件存储在国外,在 pull 过程中会遇到速度过慢的问题,这里 Nebula Graph 提供一种加速 pull 的方法:通过配置国内地址解决,例如:
Azure 中国镜像 https://dockerhub.azk8s.cn
七牛云 https://reg-mirror.qiniu.com
Linux 图友可在
/etc/docker/daemon.json
中加入如下内容(若文件不存在,请新建该文件)
{ "registry-mirrors": [ "https://dockerhub.azk8s.cn", "https://reg-mirror.qiniu.com" ] }
macOS 用户请点击
Docker Desktop 图标 -> Preferences -> Daemon -> Registry mirrors
。 在列表中添加
https://dockerhub.azk8s.cn
和
https://reg-mirror.qiniu.com
。修改后,点击 Apply & Restart 按钮, 重启 Docker。
以上是“如何使用Docker构建Nebula Graph源码”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。