This repo contains the build scripts and Dockerfiles to integrate CORE Emulator into HackInSDN platform, through LinuxServer.io/WebTop web desktop environment. This repo basically combines a few different projects together (see below) to create an experimentation environment to be executed on Kubernetes and allow networking Labs with Wireless nodes, physical routers, switches, etc.
Projects combined here:
- LinuxServer.io/WebTop: https://github.com/linuxserver/docker-webtop
- CORE Emulator: https://coreemu.github.io/core/
- EMANE: https://github.com/adjacentlink/emane
- OSPF-MDR / Quagga (modified for MANET networks): https://github.com/USNavalResearchLaboratory/ospf-mdr
Below are the instructions to build all software necessary (please notice that we provide some binaries in the dist folder to make things easier):
docker build -f Dockerfile.core -t build-core-tmp .
docker create --name core-tmp build-core-tmp
docker cp core-tmp:/core/core_9.2.1_amd64.deb dist/
docker rm -f core-tmp
docker build -f Dockerfile.emane -t build-emane-tmp .
docker create --name emane-tmp build-emane-tmp
docker cp emane-tmp:/emane-debs dist/
docker rm -f emane-tmp
docker build -f Dockerfile.ospf-mdr -t build-ospf-mdr-tmp .
docker create --name ospf-mdr-tmp build-ospf-mdr-tmp
docker cp ospf-mdr-tmp:/ospf-mdr/quagga-mr_amd64.deb dist/
docker rm ospf-mdr-tmp
And finally:
docker build -t hackinsdn/coreemu:latest .