This page details the system requirements for the development environment that will be used to run the VM Build Container.

OS Requirements

The VM Build Container is supported on Ubuntu Desktop, version 20.04 LTS or above.

If you want to run the VM Build Container on Windows, install Ubuntu in the Windows Subsystem for Linux.

Resource Requirements

A development environment with at least 200 GB of available disk space is recommended. This is because various temporary versions of the VM are produced in different formats before the final output is produced.

We recommend that the development environment should have a minimum of at least 2 CPU cores and 8 GB of RAM.

Resource requirements will vary upwards as more complex applications are installed during the build phase.

Docker

Docker must be installed in the development environment. If you don’t already have this, follow the official instructions for installing Docker on Ubuntu

In general we recommend using the latest version of Docker available. The minimum supported version is 20.10.10.

To see the version of your Docker installation, from inside a Linux terminal, you can run:

docker version

Docker user group

By default Docker runs as the root user, but the vmbc tool runs as the logged in user, yet needs to use Docker. To permit this, you need to create a docker group, and add the current user to it using the following sequence of commands:

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

You can find more explanation of what these commands are doing at Manage Docker as a non-root user.

Docker in Docker

Building a VM image is a complex task, and the tools used to do so themselves make use of Docker, as does the vmbc tool which invokes those tools. The vmbc tool comes pre-packaged with Docker-in-Docker and runs its own, internal, version of Docker automatically.

For more information about Docker-in-Docker, refer to https://hub.docker.com/_/docker.

Utilities

To run the VM Build Container, a version of bash at or above 5.0.3 must be installed on the development environment.

The zip and unzip utilities are required to use the VM Build Container to make custom VMs.

The tar utility is required to extract the archive containing the VM Build Container and the vmbc tool.

Internet Access

Internet access is not required to use the VM Build Container to produce VMs.

All software artifacts necessary to produce a VM are either passed in by the user, or already included inside the VM Build Container.

Previous page Next page