neurodocker icon indicating copy to clipboard operation
neurodocker copied to clipboard

discuss: container maker

Open satra opened this issue 6 years ago • 1 comments

nvidia has been working on this:

https://devblogs.nvidia.com/making-containers-easier-with-hpc-container-maker/ repo: https://github.com/NVIDIA/hpc-container-maker

we may try to see how similar or different this is relative to neurodocker

cc: @yarikoptic

satra avatar May 21 '18 12:05 satra

@satra - thanks for sharing this.

my initial observations:

  • hpccm generates dockerfiles and singularity recipes (like neurodocker)
  • hpccm seems to focus on compiled software, cuda, mpi.
  • hpccm is lower-level than neurodocker. users must create a python script to generate container specs. this python script is used when calling hpccm on the command-line.
  • the components of hpccm are all coded in python (). neurodocker is using string templates now with the idea that it makes it easier to contribute to and maintain.
  • hpccm cleverly overloads the __iadd__ operator to simplify stringing together container commands.
    Stage0.baseimage('ubuntu:16.04')
    Stage0 += apt_get(ospackages=['gcc', 'g++', 'gfortran'])
    

hpccm seem to do exactly the same thing (generate dockerfiles and singularity recipes) but differ in their expectations from the user. neurodocker attempts to make things as easy as possible for the user, whereas hpccm seems geared towards users with scripting knowledge. a command-line interface might come out for hpccm, making it more accessible to users.

it is possible we could use hpccm as a code base and create hpccm-compatible recipes for neuroimaging software. those could be accessible via a command-line interface.

kaczmarj avatar May 21 '18 16:05 kaczmarj

I'm closing the discussion for now, please reopen if it is still relevant

djarecka avatar Feb 03 '23 20:02 djarecka