Flexran controller packaged in docker image

This project is a repackaging of flexran snap into a docker image

How to use

If available, use the built image preferably. Otherwise you can build from the content of the dir as follows

docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t flexran:snap .

Licensing with regards to the mosaic community

This is not an official mosaic community project. The official way of deploying flexran is the use of the official snap from the store.

This project is personnal and unofficial at the moment. The use and license of the project flexran is thus the right one for the use of this project.

Start the container

docker run --rm -it --privileged -p 2210:2210 -p 9999:9999 flexran:snap

Additional notes

  • Although both udp and tcp ports are open in the container, in the proposed run command only tcp is exposed. If your flexran does not connect to the eNodeB or your northbound app, take this into consideration and try to debug by adding -p 2210/udp:2210/udp -p 9999/udp:9999/udp
  • I chose to give the full privileges to the container. You could argue only some of the capabilities are necessary to the proper working of flexran. If you checked the right capabilities, please report I would update accordingly (thanks in advance).
  • Now that it is proven to work, one could go to optimize the path structure by removing everything snap related, as only the bin directory plus the logging (and other, which ?) are used. If someone could look it up in an iterative kind of approach and cleans up the docker image, I am interested.