eWaterCycle / infra

Instructions for system administrators to deploy the eWaterCycle platform
Apache License 2.0
0 stars 0 forks source link

Building custom containers #126

Open Peter9192 opened 2 years ago

Peter9192 commented 2 years ago

Currently the workflow for adding model (version)s to the eWaterCycle platform is (also see https://github.com/eWaterCycle/ewatercycle/issues/294)

  1. make a dockerfile
  2. build docker image
  3. upload to dockerhub
  4. build singularity pulling from dockerhub
  5. use it

Step 3 and 4 can be combined by building from a local docker image, but it would be even better if we didn't need to convert between docker and singularity altogether.

One way to achieve this is to make docker available on the default infra Another option is to switch from dockerfiles to something singularity understands (singularity definition file?)

Peter9192 commented 2 years ago

@RolfHut FYI

sverhoeven commented 2 years ago

In a previous version (v0.1.2) we had a Ansible role to install Docker that could be resurrected.

sverhoeven commented 2 years ago

From a security perspective I would like to keep Docker away from the VM.

We could also use singularity run docker://sylabsio/lolcow:latest, this will build and cache image in users singularity cache folder. The first time will take a while to download/build for each user.

Peter9192 commented 2 years ago

could also use singularity run docker://sylabsio/lolcow:latest

This still builds from a container image on dockerhub, right? The point of this issue is that you should be able to build/obtain a singularity/apptainer image without needing docker/dockerhub.