Docker 无法从远程主机访问停靠的NiFi UI

Docker 无法从远程主机访问停靠的NiFi UI,docker,apache-nifi,Docker,Apache Nifi,我正在尝试建立一个临时NiFi服务器,以支持客户的概念验证演示。对于这些类型的短期服务器,如果可能的话,我喜欢使用Docker。我能够在没有任何问题的情况下启动并运行NiFi容器,但我不知道如何从远程主机上的浏览器访问其UI。我尝试了以下docker run变体: docker run-名称nifi\ -p 8080:8080\ -d\ apache/nifi:最新版本 docker run-名称nifi\ -p 8080:8080\ -e NIFI_WEB_HTTP_PORT='8080'\

我正在尝试建立一个临时NiFi服务器,以支持客户的概念验证演示。对于这些类型的短期服务器,如果可能的话,我喜欢使用Docker。我能够在没有任何问题的情况下启动并运行NiFi容器,但我不知道如何从远程主机上的浏览器访问其UI。我尝试了以下docker run变体:

docker run-名称nifi\ -p 8080:8080\ -d\ apache/nifi:最新版本

docker run-名称nifi\ -p 8080:8080\ -e NIFI_WEB_HTTP_PORT='8080'\ -d\ apache/nifi:最新版本

docker run-名称nifi\ -p 8080:8080\ -e NIFI_WEB_HTTP_HOST=${hostname here}\ -e NIFI_WEB_HTTP_PORT='8080'\ -d\ apache/nifi:最新版本

我的NiFi版本是1.8.0。我相当确定我的问题与版本1.5.0中添加的主机头阻止程序功能有关。我见过一些类似于我的问题,但没有解决方案。 1.5.0版之后是否可以从远程主机访问NiFi UI? 可以为非prod演示禁用主机标头阻止程序吗? 在我的服务器上安装非Docker是否会出现相同的主机头阻止程序问题?
a应该在我的演示中使用1.4吗?这样我就不会头疼了

虽然Docker中的主机头出现了1.5.0版本的错误,但问题已得到解决,此外,主机头检查现在仅对安全环境强制执行,您将在容器启动日志中看到有关此问题的说明


在每个示例中,您在问题中提供的命令都可用于访问相关映射端口上的NiFi,我已在1.6.0、1.7.0和1.8.0中对此进行了验证。例如,您可能希望评估有问题的远程计算机的网络安全设置(例如云提供的实例)。通常需要明确的安全组来公开端口。

我也有同样的问题,我无法远程访问web ui。原来是防火墙问题。禁用firewalld&添加自定义防火墙规则以允许docker网络具有端口,应该可以解决此问题


docker-compose.yml是共享的

我将仔细查看docker主机的安全设置。由于其他web应用程序在同一docker实例上毫无问题地工作,因此我排除了这一可能性。谢谢你的建议,如果我能让它工作起来,我会再次发表评论。我很高兴地说,我认为我的NiFi docker一直在工作。只是启动需要很长时间,即使日志显示jetty正在运行。就我而言,大概10分钟。当我在笔记本电脑上运行应用程序时,启动只需几秒钟。嘿@rennyB,不幸的是容器和NiFi本身需要一段时间才能启动它的初始运行。有几个NARs NiFi专用罐必须在首次启动时打开包装,这是集装箱装卸区的常见做法。慢速/共享磁盘进一步加剧了这种情况。运输集装箱时,所有这些罐子都未包装,这将大大增加集装箱的尺寸。