docker-ml

docker-ml is a framework building on docker and adding management capabilities for volumes and easier handling for run options.

docker-ml Architecture

Quick Start

  1. Create a new volume

  2. Configure the install runoptions.txt

  3. Build the install docker image

  4. Run the install docker container

  5. Install the tool onto the mounted volume

  6. Configure the run runoptions.txt

  7. Build the run docker image

  8. Test the setup

  9. (Push the volume to the volume share)

  10. (Push the container)

Naming Conventions

The Gitlab Images Group is structured as follows

└──Images
     ├── Tools          
     │    ├── cadence
     │    │     └── ... (cadence toos, e.g. MMSIM)
     │    ├── synopsys
     │    │     └── ... (synopsys tools e.g. primetime)
     │    ├── misc
     │    │     └── ... (unsorted tools)
     │    ├── mentor
     │    |     └── ... (mentor tools e.g. questasim)
     │    └── ...
     ├── Environments
     │    └── ... (Environments images - collection of tools in one docker image)
     ├── Baseimages
     │    └── ... (Baseimages for microlab to prevent future conflicts with updates of baseimages)
     └── image-common (common content to be included into docker images)

Warning

The GitLab and docker image tags must comply with following conventions:

  • The path of the run docker image must be the same as the path of the repository in GitLab. e.g. https://gitlab.ti.bfh.ch/docker-ml/images/tools/misc/matlab translates to docker-ml.ti.bfh.ch/tools/misc/matlab

  • Tag the run docker image and GitLab repository both with the same, corresponding release tag. e.g. R2019b for MatLab or 5.12.2 for Qt5 (if no release tag available use v<major.minor.patch>)

  • Always add the corresponding version into the volume description. With that, always create a new volume for a new version.