Tips for creating containers
Some important tips for creating containers to be used with PROMINENCE:
- Do not put any software or required files in
/root, since containers are run as an unprivileged user. - Do not put any software or required files in
/homeor/tmp, as these directories in the container image will be replaced when the container is executed. - Do not specify
USERin your Dockerfile when creating the container image. - The environment variable
HOMEwill be set to a scratch directory (/home/user) accessible inside the container when the container is executed. For the case of multi-node MPI jobs this scratch directory is accessible across all nodes running the job. - The environment variables
TMPandTEMPare set to/tmp. This directory is always local to the host, including for multi-node MPI jobs. - Do not expect to be able to write inside the container's filesystem. Write any files into the default current working directory, or into the directories specified by the environment variables
HOME,TMPandTEMP. - The application should be able to be run from within any directory and access any required input or output files using relative paths.