DataBiosphere / dsub

Open-source command-line tool to run batch computing tasks and workflows on backend services such as Google Cloud.
Apache License 2.0
265 stars 44 forks source link

Dockerfile ENTRYPOINT instructions should be handled consistently across providers #125

Closed sconstable closed 6 years ago

sconstable commented 6 years ago

Hi All! Lovely work on dsub so far, I am really enjoying it. I am having issues when running with the local provider vs. the google-v2 provider.

Another member on my team built a docker image of our software using ENTRYPOINT ["software-name"] in the Dockerfile. Running an arbitrary script, something like echo Hello World, in dsub using the google-v2 provider works fine but does not work with the local provider. From what I can tell, this is because when we submit the job to Google we are overriding the entrypoint to /bin/bash. However, there is no such override of the entrypoint in the local provider.

I tried to see if I could supply custom flags to the call to docker via dsub so I could set --entrypoint /bin/bash, but there doesn't seem to be a way to pass arbitrary parameters either. Bear in mind I'm a beginner with Docker, but I have a lot of experience with Linux in general. Thanks for your advice!

mbookman commented 6 years ago

Thanks for the report!

With Pipelines API v1alpha2 (which the google provider uses), images with an entrypoint never ran properly, so we recommended that people create an alternative version of their image with an explicit entrypoint of "bash".

With Pipelines API v2alpha1 (which the google-v2 provider uses), we do (as you indicate) explicitly set the entrypoint to '/bin/bash'.

It is now time to update the local provider to work more like the google-v2 provider in this regard.

mbookman commented 6 years ago

The local provider now supports Docker images with entrypoints in release 0.2.1. Let us know how it goes. Fixed by #126.

sconstable commented 6 years ago

Hi, I tested this today and everything is working perfectly. Thanks a bunch! --Steve

On Thu, 4 Oct 2018 at 21:52, Matt Bookman notifications@github.com wrote:

The local provider now supports Docker images with entrypoints in release 0.2.1. Let us know how it goes. Fixed by #126 https://github.com/DataBiosphere/dsub/pull/126.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/DataBiosphere/dsub/issues/125#issuecomment-427213967, or mute the thread https://github.com/notifications/unsubscribe-auth/AEgI5N0rTAYHLBGXbqpOvuwkUpVVEZBwks5uhq1igaJpZM4W0u3L .

mbookman commented 6 years ago

Great to hear. Thanks for letting us know.