Building Control Emulator platform

The building emulator is given as a Functional Mock-up Unit (FMU) and simulated using JModelica. JModelica, as the tool to simulate and analyze the building emulator behavior, has been packaged on a Ubuntu 16.04.5 LTS machine in a Docker container. Hence, in order to download, access and run the JModelica-specialized container, Docker needs to be installed on the host machine.

Docker Container

For Windows 10 and Mac OS, there are specific versions of Docker desktop, that is Docker desktop for Windows, and Docker desktop for Mac. On Ubuntu (Linux), installing Docker is less straight forward, and the procedure coudl follow the details below.

File Script to install Docker CE on Ubuntu, which presents what the docker installation site shows at Docker installation, can be used as helper to download and install Docker CE on Ubuntu.


# Environment variables you need to set so you don't have to edit the script below.

# Update the apt package index.
sudo apt-get update

# Install packages to allow apt to use a repository over HTTPS.
sudo apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common \

# Add Docker's official GPG key.
curl -fsSL$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -

# Verify the fingerprint.
sudo apt-key fingerprint 0EBFCD88

# Pick the release channel.
sudo add-apt-repository \
  "deb [arch=amd64]$(. /etc/os-release; echo "$ID") \
  $(lsb_release -cs) \

# Update the apt package index.
sudo apt-get update

# Install the latest version of Docker CE.
sudo apt-get install -y docker-ce

# Allow your user to access the Docker CLI without needing root.
sudo /usr/sbin/usermod -aG docker $USER

# Install Docker Compose.
curl -L${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` -o /tmp/docker-compose
sudo mv /tmp/docker-compose /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo chown root:root /usr/local/bin/docker-compose

The script also installs Docker Composer, used to define and run a multi-container Docker application. See Compose overview.

Warning. To be able to run the Docker CLI without needing root, you need a reboot.