Hi, news from the Galaxy Docker project! With the recent addition of tags in trusted builds it's now possible to create a tagged Docker Images for every stable Galaxy release. I will try to maintain that and will release every two month, in sync with the Galaxy release, a new Docker image. Feedback welcome! https://registry.hub.docker.com/u/bgruening/galaxy-stable/tags/manage/ Cheers, Bjoern Am 30.04.2014 00:43, schrieb Björn Grüning:
Dear Galaxy Devs and Users,
I'm pleased to announce the Galaxy Docker Image project!
The Galaxy Docker Image is an easy distributable full-fledged Galaxy installation, that can be used for testing, teaching and presenting new tools and features.
One of the main goals is to make the access to entire tool suites as easy as possible. Usually, this includes the setup of a public available webservice that needs to be maintained, or that the Tool-user needs to either setup a Galaxy Server by its own or to have Admin access to a local Galaxy server. With docker, tool developers can create their own Image with all dependencies and the user only needs to run it within docker. Ideally suited to make your reviewers happy :)
Currently, I have three test images to play with. The first one, bgruening/galaxy-stable is the main Image that will do all the heavy lifting of setting up PostgreSQL, Apache and Galaxy.
bgruening/deepTools and bgruening/chemicaltoolbox are proof of concepts how easy it is to create an own Image build on top of the main Galaxy Image.
https://index.docker.io/u/bgruening/galaxy-deeptools/ https://index.docker.io/u/bgruening/galaxy-chemicaltoolbox/
How to use it: docker run -d -p 8080:80 bgruening/galaxy-deeptools docker run -d -p 8080:80 -p 8000:8000 bgruening/galaxy-chemicaltoolbox
For a more detailed description please read: https://github.com/bgruening/docker-recipes/tree/master/galaxy
I would be very much interested in any kind of feedback. Especially, in two technical questions:
I'm not sure if a "trusted build" from the docker index is the best way to go. Trusted Builds in docker are super convenient. It is a post-commit hook from github. Every time something is pushed, the image will be rebuild. The problem is that I can't tag my images with "trusted builds" and unless I have missed something, that forces me to create new repositories every time a new Galaxy release is out. A better way would be, one repository with different tags: galaxy-stable, galaxy-feb-2014 and so on. Every Galaxy release will be just a diff between the old and the new. But this is not possible with "trusted builds".
One other trick I used is to remove the mercurial history, that saves 180MB. I'm not sure if this is wise, because it probably kills a few use cases. Currently, the aim of this project is a little bit different from being a developer environment. So I decided to remove it. Please ping me if this was a bad decision :)
Thanks for reading! Bjoern