如何通过编辑 conf/interpreter.json 文件向 Zeppelin 添加新的 jdbc 解释器?
Posted
技术标签:
【中文标题】如何通过编辑 conf/interpreter.json 文件向 Zeppelin 添加新的 jdbc 解释器?【英文标题】:How to add a new jdbc interpreter to Zeppelin by editing its conf/interpreter.json file? 【发布时间】:2018-12-05 22:00:39 【问题描述】:通过使用正常的 zeppelin UI,我成功地将新的 JDBC 解释器添加到我的首选数据库中。有用。我的 Zeppelin 正在我机器上的 docker 容器上运行。我注意到它将我的解释器配置添加到 /zeppelin/conf/interpreter.json 文件中。
我在解释器设置集合下提取了插入文件中的 json 片段。我构建了一个脚本,该脚本会以编程方式将该 json 块添加到 /zeppelin/conf/interpreter.json 中,以便我的容器以开箱即用的解释器开始。
但是当我在一个全新的 Zeppelin 容器上运行我的脚本后,会发生什么: 1)它的工作原理 - json 片段成功插入 /zeppelin/conf/interpreter.json 2) Zeppelin 不会在其 UI 上显示我的解释器
我还必须做什么才能以编程方式将此解释器添加到我的 Zeppelin 容器中?
【问题讨论】:
【参考方案1】:我相信您的方法将适用于新版本 0.8.0。在 0.8.0 中,解释器 ID 等于解释器名称。 在以前的版本中,解释器具有唯一 ID,这可能是您提出问题的原因。
记住编辑conf/interpreter.json
时Zeppelin服务器必须关闭
【讨论】:
将新解释器添加到interpreter.json 文件中有效。我只需要重新启动整个容器。问题是我不想重新启动整个容器。容器是短暂的......【参考方案2】:我的问题正在发生,因为 Zeppelin 容器启动后,已经太晚了。 Zeppelin 服务已启动并正在运行,它已经加载了解释器.json。所以,我所做的是将我的 Dockerfile ENTRYPOINT 配置为我的脚本,覆盖标准 Zeppelin 容器的入口点。我的脚本会在interpreter.json 文件中注入我需要的其他配置,并调用/zeppelin/bin/zeppelin.sh 来启动zeppelin。
这样,在 Zeppelin 在容器中实际启动之前,我可以对配置文件做任何我想做的事情。
亲切的问候, 作为
【讨论】:
您能在这里分享您的 dockerfile 内容吗?谢谢!以上是关于如何通过编辑 conf/interpreter.json 文件向 Zeppelin 添加新的 jdbc 解释器?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 graphicsmagick 命令编辑 exif 元数据?