This repo contains a simple gNB emulator to test custom E2SM definitions. Definitions are plugged in as the 'oai-oran-protolib' submodule.
This is the recommended deployment option, as it allows the emulator to run on any host system. First, install docker. You'll also need git.
Clone this repo and enter the repo's folder:
git clone https://github.com/ANTLab-polimi/gNB-e2sm-emu.git
cd gNB-e2sm-emu
Then build the image:
docker build -f Dockerfile -t gnb_e2sm_emu:mrn_base .
If the build is successfull, you will see the built image with docker images
Now start the container:
docker run -dit --name gnb --net=host gnb_e2sm_emu:mrn_base
The gNB emulator does not start automatically. First connect a terminal to the running container:
docker exec -it gnb bash
and then in this terminal you can run the gNB:
./build/gnb_e2server_emu
This depends on your system, but you basically need a C compiler, cmake, and protobuf-c. Ubuntu instructions can be extracted from the Dockerfile.