Prerequisite Packages (mongodb, logrus)
- Control-plane Supporting Packages
sudo apt -y update
sudo apt -y install mongodb wget git
sudo systemctl start mongodb- User-plane Supporting Packages
- Check Linux kernel version
5.0.0-23-generic
- Check Linux kernel version
uname -r- Retrieve the 5G GTP-U kernel module using `git` and build itgit clone -b v0.2.1 https://github.com/PrinzOwO/gtp5g.git
cd gtp5g
make
sudo make install- Install build toolssudo apt -y update
sudo apt -y install git gcc cmake autoconf libtool pkg-config libmnl-dev libyaml-dev
go get -u github.com/sirupsen/logrusClone the free5GC repository
- To install the latest stable build (v3.0.5):
cd ~
git clone --recursive -b v3.0.5 -j `nproc` https://github.com/free5gc/free5gc.git
cd free5gc NOTE: the root folder name for this repository must be free5gc. If it is changed, compilation will fail.
- Compile network function services in
free5gc- To build all network functions:
cd ~/free5gc
makeInstall WebConsole
- Before building WebConsole, install nodejs and yarn packages first:
sudo apt remove cmdtest sudo apt remove yarn
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update
sudo apt-get install -y nodejs yarn- Build WebConsole
- to build using make:
cd ~/free5gc
make webconsole- To build free5GC webconsole server
(In directory: ~/free5gc/webconsole)
cd frontend
yarn install
yarn build
rm -rf ../public
cp -R build ../public- To run the free5GC webconsole server
(In directory: ~/free5gc/webconsole)
go run server.go