Enroot containers

On this page

Overview

On cluster newton installed environment enroot to use a containers (dockers and etc. )

Before you can use containers we have to create it (if not exist ) , so if you can’t find needed container in /mnt/images you can send request mail to admlab@cs.technion.ac.il with : full name and path to docker/singularity container

To use containers :

Load module enroot:

module purge
module load enroot

Copy needed image to home directory:

mkdir /enroot
cp /mnt/images/nvidia+cuda+10.0-base.sqsh enroot/
cd /enroot

Open image to enroot local environment:

enroot create --name cuda nvidia+cuda+10.0-base.sqsh

* for check loaded images run command:

enroot list

Request resources to run container:

srun -c 10 --gres=gpu:2 enroot start cuda

Examples

Starting a container

... enroot start --rw nvidia+pytorch+21.04-py3 bash

Start the container nvidia+pytorch+21.04-py3 in read-write mode (–rw) and run bash inside the container.

... enroot start --root --rw nvidia+pytorch+21.04-py3 bash

Start container in –rw-mode and get root access (–root) inside the container.

You can now install software with root privileges, depending on the containerized Linux distribution e.g. with apt-get install …, apk add …, yum install …, pacman -S …

... enroot start -m :/work --rw nvidia+pytorch+21.04-py3 bash

Start container and mount (-m) a local directory to /work inside the container.

... enroot start -m :/work --rw nvidia+pytorch+21.04-py3 jupyter lab

Start container, mount a directory and start the application jupyter lab.