Exposed Storm Nimbus Thrift port and ZooKeeper port to allow submitting topologies from external to
Docker env. ZooKeeper port is needed when Kafka spout is used and when topology is submitted, the
topology/spout construction code is ran from your external-to-Docker environment.

Your external-to-Docker environment needs to properly configure Nimbus host and its Thrift port, as
well as ZooKeeper broker list and port (if using Kafka spout) in your "~/.storm/storm.yaml".

One pitty at the moment is that Storm only allows using a single port for all ZooKeeper brokers.
This is not a problem inside Docker since each broker has its own hostname and hence can use the
same port. However, you cannot expose brokers to the same port to external world. This is not really
a deal breaker as the Kafka spout construction does allow using different port for brokers, just
that in this scenario you can no longer read ZooKeeper brokers from Storm configuration.