Member since
11-04-2017
3
Posts
2
Kudos Received
0
Solutions
11-07-2017
09:21 PM
@Dave - I tried -p 19090:19090 and that worked for me. As you said - I had to make sure that I remove all containers (active or stopped) with sandbox-hdf tag before I started the script again. If you add above port to docker run command (with all other ports) it will open that port and then everything worked for me. I also tried creating new docker image where I would update nifi.properties file so that it runs on 9090 (instead of 19090) but that did not work for me. I used docker file like: FROM sandbox-sdf:latest COPY nifi.properties /usr/hdf/current/nifi/conf/ where nifi.properties was my local copy with 9090 port in it. When the containers starts I can see my change included - but during the NIFI service start - this gets overridden to 19090 from somewhere. In any case adding this additional port instruction is much easier - it is just a start script change.
... View more
11-07-2017
04:02 PM
1 Kudo
Edgar - the reason why -p 19090:9090 will not work is that nifi.properties file has 19090 as web port (not 9090). 19090 is not exposed in the docker image (you can run docker inspect sandbox-hdf to check). In my opinion there are 2 solutions to this problem: 1. Build new docker image where nifi.properties has 9090 as port and then run it with -p 19090:9090 2. Create new docker image where 19090 port is exposed and then run it with -p 19090:19090
... View more
11-06-2017
03:19 PM
1 Kudo
I have the same issue HDF image HDF_3.0_docker_12_6_2017. I can access Ambari and even Web Shell Client from the Quick Links but not NIFI. From Web Shell Client I can see that NIFI is running: netstat -anp | grep 19090 comes back with tcp 0 0 172.17.0.2:19090 0.0.0.0:* LISTEN 1622/java when I check the 1622 process ID: [root@sandbox-hdf ~]# ps -ef | grep 162
nifi 1622 1606 13 19:46 ? 00:01:04 /usr/lib/jvm/java/bin/java -classpath /usr/hdf/current/nifi/conf:/usr/hdf/current/nifi/lib/javax.servlet-api-3.1.0.jar...
In the log files under var/log/nifi I see no errors.
What I noticed is that the script that I use to start sandbox image was missing port mapping for 19090:
docker run --name sandbox-hdf --hostname "sandbox-hdf.hortonworks.com" --privileged -d `
-p 9999:9999 `
-p 12181:2181 `
-p 26000:16000 `
...
so - added the port 19090 to this but it made no difference.
The only explanation I can think of is that docker file that was used to build this image did not specify that 19090 port should be exposed.
To check that I run docker ps and found my container ID for hortonworks sandbox and then I inspected that with
docker inspect 8798372c4746 (which was my container ID)
it comes back with JSON response and in the section "ExposedPorts" - the 9090 was there but 19090 was not.
So - to test this theory - I modified nifi.properties file in /usr/hdf/current/nifi/conf directory and changed the web port from 19090 to 9090 and then restarted NIFI using scripts from /usr/hdf/current/nifi/bin directory (nifi.sh restart)
Now I can connect to http://sandbox-hdf.hortonworks.com:9090/nifi/ and get the NIFI screen.
I can make the new docker image from the Hortonworks one with this port change - but it would be better if Hortonworks fixes this since all their quick links point to 19090 (not 9090). I presume that the same issue is for the other apps that don't start from this image (either ports are not exposed or the start script does include these)
... View more