I know a few people have talked about using docker to package and distribute Galaxy tools. The most recent version now runs on all major linux distributions, so it's a bit more inclusive now (but there probably won't ever be a windows or mac version). One strategy would be for tool configs to define an option Docker archive name and possibly an alternate command line to execute if the docker archive is being used. How far has that work gotten, and what are people thinking about it? Kyle
Kyle; I'm also excited about Docker for easing installation issues and fully capturing run environments. I haven't yet done anything specifically for Galaxy tools but put together a functional docker installation of bcbio-nextgen as a step towards integration: https://github.com/chapmanb/bcbio-nextgen-vm The trickiest parts of integration are that you need to mount all container-external data directories used, so need to identify inputs, outputs and data files and map them over to mounts in the container. There is some optimism about support for at least Mac for running containers. There is a native Docker client, and work on supporting the server side is on going according to the discussion: https://news.ycombinator.com/item?id=7009306 There is also the approach using super minimal VMs that wrap docker. This isn't easy to use yet but it looks like the proof of concept is there: https://github.com/steeve/boot2docker It would be great to hear what other people end up doing with Docker. Thanks for starting this discussion, Brad
I know a few people have talked about using docker to package and distribute Galaxy tools. The most recent version now runs on all major linux distributions, so it's a bit more inclusive now (but there probably won't ever be a windows or mac version). One strategy would be for tool configs to define an option Docker archive name and possibly an alternate command line to execute if the docker archive is being used.
How far has that work gotten, and what are people thinking about it?
Kyle ___________________________________________________________ Please keep all replies on the list by using "reply all" in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
Kyle, Brad, all, Thanks for getting this conversation started, I am by no means a Docker expert - but I have taken a shot at integrating it with Galaxy, opened a pull request, and I am fairly excited about the result (by all means though please tell me what I have done wrong and what needs to be improved). https://bitbucket.org/galaxy/galaxy-central/pull-request/401/allow-tools-and... Like Kyle suggested it allows tools to annotated what image to use - but Galaxy has all the inputs, outputs, and stuff annotated so I am not sure an alternative command-line is needed. There is some intelligence in there for determining what needs to be mounted read-only and what needs to be mounted read-write - and that is all extendable by the deployer - so library data and indices can be added read-only say. If the Galaxy option outputs_to_working_directory is enabled - the container should just need to write to the working directory so that is reflected in the adaptive defaults as well. Furthermore - if the LWR is being used even the inputs are staged (be default anyway) so the container can be highly isolated - basically just having read-only access to inputs and write access to its outputs. This implementation disables the container's network access by default - that coupled with the LWR isolation could potentially make tools that take in arbitrary scripts more palatable. Lots of exciting possibilities. Looking forward to building some cool stuff with you guys at the hackathon! -John On Tue, Jan 14, 2014 at 7:44 AM, Brad Chapman <chapmanb@50mail.com> wrote:
Kyle; I'm also excited about Docker for easing installation issues and fully capturing run environments. I haven't yet done anything specifically for Galaxy tools but put together a functional docker installation of bcbio-nextgen as a step towards integration:
https://github.com/chapmanb/bcbio-nextgen-vm
The trickiest parts of integration are that you need to mount all container-external data directories used, so need to identify inputs, outputs and data files and map them over to mounts in the container.
There is some optimism about support for at least Mac for running containers. There is a native Docker client, and work on supporting the server side is on going according to the discussion:
https://news.ycombinator.com/item?id=7009306
There is also the approach using super minimal VMs that wrap docker. This isn't easy to use yet but it looks like the proof of concept is there:
https://github.com/steeve/boot2docker
It would be great to hear what other people end up doing with Docker. Thanks for starting this discussion, Brad
I know a few people have talked about using docker to package and distribute Galaxy tools. The most recent version now runs on all major linux distributions, so it's a bit more inclusive now (but there probably won't ever be a windows or mac version). One strategy would be for tool configs to define an option Docker archive name and possibly an alternate command line to execute if the docker archive is being used.
How far has that work gotten, and what are people thinking about it?
Kyle ___________________________________________________________ Please keep all replies on the list by using "reply all" in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
Please keep all replies on the list by using "reply all" in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
participants (3)
-
Brad Chapman
-
John Chilton
-
Kyle Ellrott