Skip to content

dstohr/maci-docker-compose

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

MACI Docker

This repository provides a set of instructions to create Docker containers to start a full working set of the MACI framework published on https://maci-research.net/

The service is launched with Docker Compose initiating and connecting three Containers:

  • MACI_Backend running the management framework based on .Net
  • Jupyter-Notebook for analyzing experiments
  • Mininet-Worker to run experiments (multiple instances can be started, however, be aware of side effects when executing parallel network experiments on the same host)

Getting Started

Setup Docker

#run as root
apt-get update
apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
apt-get update
apt-get install docker-ce
curl -L https://github.com/docker/compose/releases/download/1.15.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
service docker start
  • macOS

    Install Docker (e.g., following these instructions)

  • Windows

    Install Docker (e.g., following these instructions).

Load Submodules

The MACI framework is loaded as a git submodule and needs to be loaded before starting the container:

git submodule init
git submodule update --remote

Start

  • Attached (logs visible) docker-compose up --build

  • Detached docker-compose up -d --build

FAQ

  • Reset (CAUTION all local docker instances and volumes are removed)

    docker stop $(docker ps -aq)
    docker rm $(docker ps -aq)
    docker volume prune -f
  • How do I start up more workers

    Newer Docker-Compose releases support the flag --scale mininet=n to launch n workers.

Contact