Dynamic listening ports inside Docker container

2020-06-17 04:46发布

I have an application which after making some connections using its default ports starts opening(listening) new RANDOM ports to handle just the existing connection and then drops them (Video calls).

It also exchanges its IP address and ports inside the communication protocol, I was able to solve the IP address issue, but still not able to find a way to dynamically tell IPTABLES of the host machine to open same ports when they are being opened inside Docker container, anybody has any ideas?

1条回答
甜甜的少女心
2楼-- · 2020-06-17 04:56

The --net=host option, for the docker run command, should enables the behavior you are seeking -- note that it is considered as insecure, but I really don't see any other mean of doing this.

See the docker run man page:

   --net="bridge"
      Set the Network mode for the container
                                  'bridge': create a network stack on the default Docker bridge
                                  'none': no networking
                                  'container:<name|id>': reuse another container's network stack
                                  'host': use the Docker host network stack. Note: the host mode gives the container full access to local system services  such  as  D-bus
   and is therefore considered insecure.
                                  '<network-name>|<network-id>': connect to a user-defined network
查看更多
登录 后发表回答