Deploy and monitor the free5GC core network and the free-ran-ue gNB / UE simulator.
| DevOpts | Version |
|---|---|
| OS | Ubuntu 25.04 |
| go | 1.26.2 |
| nodejs | v20.20.0 |
| yarn | 1.22.22 |
| Type | Command |
|---|---|
| Make all | make |
| Backend | make backend |
| Frontend | make frontend |
| Tester | make tester |
| Run | make run |
| Run tester | make run-tester |
| Test | make test |
| Tidy | make tidy |
| Lint | make lint |
| Generate frontend openapi | make openapi |
| Generate frontend openapi for free5GC webconsole | make openapi-webconsole |
| Docker image | make docker |
fru-lab itself deploys free5gc/gNB/UE by talking to the host's Docker daemon, so its own container needs the host's Docker socket mounted in, on top of the usual config/db volumes.
-
Download the compose files
git clone https://github.com/free-ran-ue/fru-lab.git
-
Check then config
Admin can modify system settings at
./docker/config.yaml, e.g. the default login credential:username: "admin" password: "frulab"
For other settings, make sure the change is reflected in
docker-compose.yamltoo. In particular,deploy.workDirhas to stay the exact same path on the host and inside the container (see the comment on that volume indocker-compose.yaml) - fru-lab hands that path to the host's Docker daemon when it deploys free5gc/gNB/UE, so it has to resolve to the same place on both sides. -
Up the compose
docker compose up -d
The default db is stored at
/var/lib/frulab/dband deploy state at/var/lib/frulab/deploy, both mounted in the compose file. -
Down the compose
docker compose down
- Basic Guide - how to log in and perform the core deploy / monitor workflow.
- Images Guide - how to check, pull, and clear the docker images this app deploys.
- Setup Script