- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 docker-compose.yml
文件中定义了 Nifi 容器。我将默认的 Nifi 端口从 8080 更改为 8181。它工作正常。但是,我无法将 flow.xml.gz
复制到 Nifi 容器。
nifi:
image: xemuliam/nifi
network_mode: "host"
ports:
- "8181:8181"
expose:
- "8181"
environment:
- NIFI_WEB_HTTP_PORT=8181
- NIFI_WEB_HTTP_HOST=0.0.0.0
volumes:
- ./src/data_flow_engine/flow.xml.gz:/opt/nifi/conf/flow.xml.gz
- ./src/data_flow_engine/bootstrap.conf:/opt/nifi/conf/bootstrap.conf
当我注释掉 - ./src/data_flow_engine/flow.xml.gz:/opt/nifi/conf/flow.xml.gz
时,它运行良好。
这是错误信息:
2018-11-02 12:49:47,818 INFO [main] org.eclipse.jetty.server.Server Started @41290ms
nifi_1 | 2018-11-02 12:49:47,818 WARN [main] org.apache.nifi.web.server.JettyServer Failed to start web server... shutting down.
nifi_1 | org.apache.nifi.web.NiFiCoreException: Unable to start Flow Controller.
nifi_1 | at org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:88)
nifi_1 | at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:876)
nifi_1 | at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:532)
nifi_1 | at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:839)
nifi_1 | at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:344)
nifi_1 | at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1480)
nifi_1 | at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1442)
nifi_1 | at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:799)
nifi_1 | at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:261)
nifi_1 | at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:540)
nifi_1 | at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
nifi_1 | at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
nifi_1 | at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
nifi_1 | at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
nifi_1 | at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:290)
nifi_1 | at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:113)
nifi_1 | at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
nifi_1 | at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:131)
nifi_1 | at org.eclipse.jetty.server.Server.start(Server.java:452)
nifi_1 | at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:105)
nifi_1 | at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
nifi_1 | at org.eclipse.jetty.server.Server.doStart(Server.java:419)
nifi_1 | at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
nifi_1 | at org.apache.nifi.web.server.JettyServer.start(JettyServer.java:777)
nifi_1 | at org.apache.nifi.NiFi.<init>(NiFi.java:157)
nifi_1 | at org.apache.nifi.NiFi.<init>(NiFi.java:71)
nifi_1 | at org.apache.nifi.NiFi.main(NiFi.java:292)
nifi_1 | Caused by: java.nio.file.FileSystemException: ./conf/flow.xml.gz: Resource busy
nifi_1 | at sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
nifi_1 | at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
nifi_1 | at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
nifi_1 | at sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:244)
nifi_1 | at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
nifi_1 | at java.nio.file.Files.deleteIfExists(Files.java:1165)
nifi_1 | at org.apache.nifi.persistence.StandardXMLFlowConfigurationDAO.save(StandardXMLFlowConfigurationDAO.java:165)
nifi_1 | at org.apache.nifi.controller.StandardFlowService.load(StandardFlowService.java:536)
nifi_1 | at org.apache.nifi.web.contextlistener.ApplicationStartupContextListener.contextInitialized(ApplicationStartupContextListener.java:72)
nifi_1 | ... 33 common frames omitted
nifi_1 | 2018-11-02 12:49:47,819 INFO [Thread-1] org.apache.nifi.NiFi Initiating shutdown of Jetty web server...
nifi_1 | 2018-11-02 12:49:47,820 INFO [Thread-1] o.eclipse.jetty.server.AbstractConnector Stopped ServerConnector@41d0b71d{HTTP/1.1,[http/1.1]}{0.0.0.0:8181}
nifi_1 | 2018-11-02 12:49:47,823 INFO [Thread-1] org.eclipse.jetty.server.session Stopped scavenging
最佳答案
映射 flow.xml.gz
文件似乎不起作用(我用 apache/nifi-1.8.0 测试并得到与你相同的结果)。
将整个 /conf
目录映射到容器中对我有用。这是我正在使用的 docker-compose 文件:
version: "3.5"
services:
nifi:
image: apache/nifi:1.8.0
ports:
- "8181:8080"
environment:
- NIFI_WEB_HTTP_HOST=0.0.0.0
volumes:
- ./conf:/opt/nifi/nifi-current/conf/
在这种情况下,我的本地 ./conf 目录是一个完整的 NiFi 配置目录,包含:
conf
├── authorizers.xml
├── bootstrap-notification-services.xml
├── bootstrap.conf
├── flow.xml.gz
├── logback.xml
├── login-identity-providers.xml
├── nifi.properties
├── state-management.xml
└── zookeeper.properties
如果您还没有可用作起点的 conf 目录,您可以通过将其从与您正在使用的 Docker 镜像版本相对应的 Apache 项目提供的便利二进制文件中复制出来来获取它。在我的示例中,我使用了来自 nifi.apache.org 的 nifi-1.8.0.zip 中的 conf 目录。 .请注意,该目录中的某些文件是 NiFi 在运行时在该目录中创建的。
关于Docker:引起:java.nio.file.FileSystemException:./conf/flow.xml.gz:资源忙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53119670/
我花了相当多的时间尝试优化文件哈希算法,以尽可能地提高性能。 查看我之前的 SO 主题: Get File Hash Performance/Optimization FileChannel Byte
我不太明白它们之间有什么不同,所以我对这两个包有一些疑问。 在 Google 上浏览了一下之后,似乎 Oracle 决定使用更新和增强的 NIO.2 包来更新 NIO 包,作为 JDK7 版本的一部分
在 Java 1.4 之前,通过在不同的输入流/输出流之间移动字节来处理文件是常见的做法。 自 Java 1.4 起,其中 NIO已添加,建议使用 Channels 执行相同操作。 与 NIO2在 J
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我需要重写一些应该在 Java 6 VM 上运行的 Java 7 文件 IO 代码。 该实现使用了方便的 Java 7 功能,例如自动关闭、Paths 和 Files。 更具体地说,我需要处理像 /t
当我查看java中Scanner的源代码时,我发现一些让我困惑的事情 import java.nio.file.Path; import java.nio.*; 它们之间有什么区别,为什么它们不直接导
我的 Java 代码中几乎所有文件 I/O 操作都使用 java.nio.*。然而,在今天调试一段代码时,我注意到调试器 (Intellij IDEA 14) 显示了以下关于 java.nio.fil
奇怪的是,我无法在 Google 中找到 NIO.2 异步 IO 性能与通过 java.nio.channels.Selector 使用 NIO 的多路复用 IO 的明确答案。 所以,我的问题是:NI
我是初级 Java 程序员。 今天,我练习了如何在 java 中复制文件并尝试按照本教程进行操作 http://www.journaldev.com/861/4-ways-to-copy-file-i
我有一个指向绝对路径的 java.nio.Path: /home/user/project/resources/configuration.xml 我有第二个 java.nio.Path 指向项目的根
我开始使用java.nio.*,现在我想知道:为什么java.nio.Paths.get(..)不使用java.nio.Path 对象作为输入? 现在我总是做这样的事情: final Path bas
我是新手,正在学习 Java。我尝试在 Netbeans 7 中运行以下应用程序。 import java.io.*; import java.nio.file.*; import java.nio.
我的 Java 程序(见下文)有时会在 java.nio.File.move() 方法执行中因 java.nio.file.AccessDeniedException 崩溃。 我不明白为什么会抛出这个
所以我在这里阅读我最喜欢的软件模式书籍之一(面向模式的软件架构 - 并发和网络对象的模式),特别是关于 Proactor/Reactor 异步 IO 模式的部分。我可以看到通过使用可选 channel
我有一个方法如下,它已经正常运行了很长时间: private String loadFromFile(){ RandomAccessFile inFile = null; FileCh
我在 IntellijIDEA Community Edition 2017.3 版本中收到以下错误。该项目使用java版本“1.8.0-ea”。请给我一些解决问题的想法 Error:Internal
一 点睛 在 scatter-and-gather 场景下,可以将数据写入多个 Buffer 中。在 NIO 中,也能够同时操作多个缓冲区。在很多 Channel 实现类中,都提供了多个重载的 rea
I/O简介 在 Java 编程中,直到最近一直使用 流 的方式完成 I/O。所有 I/O 都被视为单个的字节的移动,通过一个称为 Stream 的对象一次移动一个字节。流 I/O 用于与外部世界接
一 点睛 给某一个文件加锁,防止并发访问时引起的数据不安全。 在 JUC 中,可以使用 synchronized、Lock 给共享的资源加锁,或者使用 volatile、CAS 算法等防止并发冲突。在
一 点睛 给某一个文件加锁,防止并发访问时引起的数据不安全。 在 JUC 中,可以使用 synchronized、Lock 给共享的资源加锁,或者使用 volatile、CAS 算法等防止并发冲突。在
我是一名优秀的程序员,十分优秀!