docker部署时,配置文件nebula-graphd.conf的位置?

  • nebula 版本:3.4.0
  • 部署方式: 分布式
  • 安装方式:Docker
  • 是否上生产环境:N
  • 问题的具体描述
  • 背景:
    ARM架构,通过docker run的方法离线分布式部署nebula。
  • 问题:
    graphd向storaged请求的时间超时
    想修改配置文件nebula-graphd.conf,查了查手册,只查到以下信息,并没有找到该配置文件。

请问:docker run分布式部署的方法,配置文件nebula-graphd.conf在哪里,非常感谢!


compose 里的配置是以启动参数传进去的哈,文档里有针对 docker 的配置的描述哈。

另外这也介绍了Nebula Config Explained - siwei.io

写在 compose yaml 里

1 个赞

@wey 您好,不好意思,新手不太懂。以下我部署过程中 docker run 的命令,请问针对以下部署方式,nebula-graphd.conf的具体位置在哪里呢?非常感谢!

docker run
-d
–name metad0
-e USER=root
-e TZ=“${TZ}”
-p 9559:9559
-p 19559:19559
-p 19560:19560
-v /mnt/sdb/docker-deploy-test/data/meta0:/data/meta
-v /mnt/sdb/docker-deploy-test/logs/meta0:/logs
–net=host
–restart on-failure
–cap-add SYS_PTRACE
vesoft/nebula-metad:latest
–meta_server_addrs=10.11.122.13:9559,10.11.122.15:9559
–local_ip=10.11.122.13
–ws_ip=10.11.122.15
–port=9559
–ws_http_port=19559
–data_path=/data/meta
–log_dir=/logs
–v=0
–minloglevel=0

参考文档这个章节, docker compose 部署方式不是从 配置文件加载的,详细看我分享的那个视频有介绍,具体的配置是一条一条以启动时候的参数传进去的,比如 --local_ip 就是一条配置。

这个 nebula-docker-compose 项目中使用的配置文件是默认 docker image 内部自带的,容器内部具体的配置文件的位置见这个 Dockerfile

docker-compose 中只是通过命令行的方式覆盖了上述 conf 中对应的 flag 的值,如果想自己在本地维护每个 service 的 conf,需要自己在 compose 的 yaml 中通过 volumes 字段将本地的 conf 挂载到容器内部对应的位置,比如:/usr/local/nebula/etc/nebula-graphd.conf,当然也可以手动通过 --flagfile 指定你自己挂载到容器内的配置文件的路径,涉及到的 docker-compose.yaml 中的对应配置:

  volumes:
    - "/your/local/conf/path:/usr/local/nebula/etc/nebula-graphd.conf:ro"

或者

  volumes:
    - "/your/local/conf/path:/your/specified/path/to/nebula-graphd.conf:ro"
  commands:
    - --flagfile=/your/specified/path/to/nebula-graphd.conf

不过如果你自己维护 conf 配置,还是要注意一下 --meta_server_addrs 这个配置使用 docker-compose.yaml 中 meta 服务的名字和端口

2 个赞

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。