Skip to content

SIRF SuperBuild on Docker

Casper da Costa-Luis edited this page Sep 14, 2017 · 26 revisions

Docker

Docker is a low-overhead, container-based replacement for virtual machines (VMs).

This works best on a linux system due to:

  1. Possibility to get CUDA support within the container
  2. X11 windows displayed natively without needing e.g. a vnc server or desktop in the container
  3. Really short installation instructions (see below)

Prerequisites

SIRF Installation

SIRF-SuperBuild$ docker-compose create

Well, that was easy. This will have pulled ubuntu:16.04, and fetched and built SIRF and all its dependencies into an image tagged in docker as ccppetmr/sirf.

Usage

SIRF-SuperBuild$ docker-compose start -ai sirf
(py2) sirfuser@hash:~$ gadgetron &
(py2) sirfuser@hash:~$ python SIRF-SuperBuild/INSTALL/SIRF/examples/Python/MR/fully_sampled_recon.py

The first line starts the sirf docker container. The second line starts gadgetron within the container as a background process. Finally, we can then run an example.

Notes

  • "Cannot connect to display" errors are usually fixed by running xhost + on the host linux system
  • Non-linux users (e.g. Windows) will need to set up a desktop and vnc server in order to have a GUI (docker files coming soon)