FlowFuse (docker driver): expose TCP port to host (modbus) server


I am evaluating FlowFuse and trying to create a modbus server (or any other tcp in) in an application instance.

As I am using the docker driver, flowfuse is creating a new container, I would like to expose a TCP port but can't really find the correct UI/setting to allow this.

Any guidelines?

Great Question. A similar question was asked here. Quoted answer from @hardillb below.

The UDP and TCP nodes are disabled on FlowFuse Cloud because there is no way to receive in bound connections and the core Node-RED nodes do not currently allow for the disabling of the inbound connections configuration.

Enabling these nodes would just lead to a large number of support tickets from users that configured the nodes to listen for connections and then wondering why they don’t work.

The reason they don’t work for inbound is that each instance is run in it’s own container and HTTP access is via a reverse proxy, the instances do not have their own public IP address to receive connections on.

There was some work done to allow disabling the server components in NR 4.0 but I’ve not checked how that is getting on or if it’s in the beta yet. Once that is done we may be able to enable the nodes for outbound connections.

To add to this, a solution is to run the modbus server in a FlowFuse Device Agent.

You can even run the Device Agent in a docker container and manually configure extra exposed ports to allow inbound connections on the port used by the modbus server node.

1 Like