微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在不终止容器的情况下向运行的Docker Nifi添加自定义NAR?

如何解决如何在不终止容器的情况下向运行的Docker Nifi添加自定义NAR?

环境

在Ubuntu 18.04.4 LTS上的Docker 18.09.7中运行的Apache Nifi 1.12.1

问题

如何在不终止容器的情况下向Docker中运行的Nifi添加现有的自定义NAR。

尝试

我有一个从主机到容器的挂载,可以放下NAR。

#1重新启动Nifi

然后我将NAR复制到/lib目录中。

重新启动Nifi,但这会杀死容器

#2将NAR从安装目录复制到/extensions目录

按照: https://www.nifi.rocks/auto-loading-extensions/

但是什么也没发生

我需要能够在不丢失容器的情况下向Nifi添加NAR

任何帮助/提示将不胜感激

docker-compose.yml

version: '3'

services:
    nifi:
        build: ./nifi
        container_name: nifi
        ports:
            - 7777:8080
        volumes:
        - ./data:/opt/nifi/nifi-current/data

Dockerfile

FROM apache/nifi:latest

RUN mkdir /opt/nifi/nifi-current/data
RUN chown -R nifi:nifi /opt/nifi/nifi-current/data

EXPOSE 8080

编辑

看起来像是将NAR的副本复制到/extensions目录中,正在加载NAR

020-10-06 10:35:15,707 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Starting load process for 1 NARs...
2020-10-06 10:35:15,836 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Creating class loaders for 1 NARs...
2020-10-06 10:35:15,838 INFO [NAR Auto-Loader] org.apache.nifi.nar.NarClassLoaders Loaded NAR file: /opt/nifi/nifi-current/./work/nar/extensions/my-nar-1.0-SNAPSHOT.nar-unpacked as class loader org.apache.nifi.nar.NarClassLoader[./work/nar/extensions/my-nar-1.0-SNAPSHOT.nar-unpacked]
2020-10-06 10:35:15,838 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Successfully created class loaders for 1 NARs,0 were skipped
2020-10-06 10:35:16,076 INFO [NAR Auto-Loader] org.apache.nifi.nar.StandardNarLoader Finished NAR l

但是它没有显示Add Processor列表中...

编辑

只需刷新浏览器中的Nifi UI即可看到处理器

解决方法

解决方案

#2将NAR从安装目录复制到/ extensions dir

所以我将NAR放到已挂载的目录中,然后将NAR复制到 /extensions

nifi-app.log中可以看到正在加载的NAR

然后刷新UI和处理器可以添加到画布

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。