Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
In this article we explain how to use OpenIFS in a container environment. At present this has been tested in two different ways using Docker on a Linux workstation:
Panel | ||||
---|---|---|---|---|
| ||||
|
Motivation
Setting up the computing environment (the libraries, directory structure, etc) required by OpenIFS can present a challenge when it is necessary to run the model on a different hardware infrastructure, for instance during workshops and training events. It is time consuming to install and compile the model and all of its required software packages. Also, the libraries that are available on the local system may not be compatible with the model requirements.
Many of these issues can be avoided by running a containerised version of the model which is a self-sufficient code package that can be used in a consistent way on different hardware platforms. The computational overhead (the "costs") of the container environment itself is often outweighed by performance increases due to the local availability and the instant access to all required libraries and data within the container.
We have used the Docker platform to produce a container image for OpenIFS. This requires the design of a "Dockerfile" which describes the build process for the model code and all its dependent libraries, and which results in a binary Docker image. This image can be uploaded onto other computers that make use of the Docker platform or which use other compatible software. A “container” is the running instance of the Docker image.
Pre-compiled OpenIFS Docker images will become can be made available for download from cloud repositories and are expected container image repositories (e.g. Docker Hub or Harbor) and should be able to run on any computer that uses the Docker platform without the need to install and compile the model or any additional software. The OpenIFS Docker images should also work with other container software compatible with the Open Container Initiative (OCI) standards , such as for instance as Singularity or Sarus.
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
|