Docker image with support for Dockerized Brainard Lab jobs.
462
Scripts and Docker images to support Matlab jobs including batch, distributed, and test jobs.
This project is a work in progress, but we are using it with some success particularly for Matlab build integration.
The goal of this project is to make it easier to pack up Matlab work as a "job", and to support job executions in several environments, like:
We can do this with a combination of Matlab functions and Docker images. The functions will help us declare jobs to be executed and resources needed. They will also generate the complicated syntax required to invoke Docker, SSH, and AWS.
The Docker images will provide portable, isolated execution environments where jobs can run, and conventions for organzing files and configuring Matlab toolboxes.
We have some Matlab functions for working with jobs. These help do things like:
We have some separate Matlab functions for getting jobs to be executed in various environments, like locally, via SSH, or on a short-lived AWS EC2 instance.
Each of these functions takes in a job and writes out a shell script that includes an embedded job definition plus commands for launching Matlab to execute the job. Since the scripts embed their job definitions, they are portable and complete.
We have several examples of working with jobs and execution environments. Some of these demonstrate a simple calculation which can be carried out locally, via SSH, or on a short-lived AWS EC2 instance.
Others demonstrate how to generate jobs and job scripts that can be used to run tests on Matlab toolboxes, locally, or on a Jenkins server.
In order to execute jobs, we need to know things like where Matlab is installed, how to obtain Matlab toolbox dependencies, and where to find input and output files. We use Docker images to establish conventions for these things, and write job execution scripts against the Docker images. So far we have three:
Content type
Image
Digest
Size
3 GB
Last updated
almost 9 years ago
docker pull ninjaben/mjs-brainard