scheduling icon indicating copy to clipboard operation
scheduling copied to clipboard

[New feature] Natively run Docker Containers build at runtime.

Open laugimethods opened this issue 6 years ago • 1 comments

Right now, only scripted code or precompiled code (like Java in .jar files) can be run in Proactive (thanks to dedicated engines). Which dramatically limits the use of the tasks.

I suggest instead to allow the use of Docker Containers that can be build directly from the code defined in the tasks.

Please find attached a POC to demonstrate that approach : ScriptTask.java

However:

  • the Docker build instruction should be provided as a parameter (defined in the studio)
  • the docker image should be mutualized (and eventually destroyed to save space)
  • use a real Docker repository so that the docker images could be distributed on multiple locations (servers)
  • a dedicated DockerTask should probably be created
  • instead of going with a generic bash script to call the docker command, a direct call might be implemented instead
  • related to previous comment, a deployment through K8s should be considered
  • in case of a larger code base than a simple script (which will be the norm if we consider Java code for example), a build from a (Git) repo should be an option

References:

laugimethods avatar Aug 08 '18 14:08 laugimethods

https://aboullaite.me/multi-stage-docker-java/

laugimethods avatar Sep 13 '18 14:09 laugimethods

New feature added in ProActive 10.0.0 release

fviale avatar Jan 30 '23 14:01 fviale