docker-compose - 如何使用 docker-compose 持久化 nifi 流文件?
问题描述
现在我正在使用 nifi 及其处理器来处理一些流媒体内容(mqtt 侦听器、json 评估、文本替换、写入 db ......)。我正在尝试保留流文件,因此我做了一些卷映射(见下文)。但它不起作用;重新启动容器后,似乎流文件没有保存......
谁能给我一个提示如何解决这个问题?
nifi:
image: apache/nifi
restart: on-failure
ports:
- "8000:8000"
networks:
- traefik
environment:
- NIFI_WEB_HTTP_PORT=8000
volumes:
- nifi_conf:/opt/nifi/conf
- nifi_state:/data/nifi/state
- nifi_db:/opt/nifi/database_repository
- nifi_flowfile:/opt/nifi/flowfile_repository
- nifi_content:/opt/nifi/content_repository
- nifi_provenance:/opt/nifi/provenance_repository
volumes:
nifi_provenance:{}
nifi_flowfile: {}
nifi_content: {}
nifi_db: {}
nifi_state: {}
nifi_conf: {}
谢谢。
解决方案
您可以像这样将 docker 容器文件夹直接映射到主机:
services:
nifi:
...
volumes:
- ./conf:/opt/conf
- ./nifi_state:/data/nifi/state
...
不需要额外的卷定义
请注意,在带有 virtualbox 的 windows 下,此功能仅适用于当前用户目录。
推荐阅读
- sql - 选择在一列中具有共同值的行
- c# - 无法在 CIL 中调用 2 个函数
- documentum - 我们如何为 Documentum Webtop 中的每个存储库和文件柜配置不同的列首选项
- node.js - 分离网络服务器和处理服务器
- azure-devops - 获取 TF30063:您无权访问 TF 命令的 https://dev.azure.com/XXXX 错误
- wordpress - 为什么 wocommerce 电子邮件模板覆盖不起作用?
- spring-boot - 如何在 Keycloak SAML 中通过 SpringBoot 中外部用户数据库的身份验证实现用户存储 SPI
- bash - 从 bash 打开一个带有 x 个窗格的 tmux 窗口以并行运行任务
- spring - 如何自动使用测试属性文件进行测试和源属性文件进行应用程序执行
- c# - 处理程序多次执行问题