Docker Images tracking the stable Galaxy releases
If the desired tools are already included in the Tool Shed, building your own personalised Galaxy docker Image (Galaxy flavour) can be done using the following steps:
Dockerfile
FROM quay.io/bgruening/galaxy
at the top of the file. This means that you use the Galaxy Docker Image as base Image and build your own extensions on top of it.
my_tool_list.yml
below). See
this page
for the file format requirements.
docker build -t my-docker-test .
4a. (if behind proxy). Add the ENV http_proxy and https_proxy variables as IPs (to avoid nameserver resolution problems) as in the example below.
docker run -p 8080:80 my-docker-test
http://localhost:8080
For a working example, have a look at these Dockerfiles.
# Galaxy - deepTools
#
# VERSION 0.2
FROM quay.io/bgruening/galaxy
MAINTAINER Björn A. Grüning, bjoern.gruening@gmail.com
ENV GALAXY_CONFIG_BRAND deepTools
# The following two lines are optional and can be given during runtime
# with the -e http_proxy='http://yourproxyIP:8080' parameter
ENV http_proxy 'http://yourproxyIP:8080'
ENV https_proxy 'http://yourproxyIP:8080'
WORKDIR /galaxy
RUN add-tool-shed --url 'http://testtoolshed.g2.bx.psu.edu/' --name 'Test Tool Shed'
# Install Visualisation
RUN install-biojs msa
# Adding the tool definitions to the container
ADD my_tool_list.yml $GALAXY_ROOT_DIR/my_tool_list.yml
# Install deepTools
RUN install-tools $GALAXY_ROOT_DIR/my_tool_list.yml
# Mark folders as imported from the host.
VOLUME ["/export/", "/data/", "/var/lib/docker"]
# Expose port 80 (webserver), 21 (FTP server)
EXPOSE :80
EXPOSE :21
# Autostart script that is invoked during container start
CMD ["/usr/bin/startup"]
or the RNA-workbench . The RNA-workbench has advanced examples about:
populating Galaxy data libraries
setup-data-libraries -i $GALAXY_ROOT_DIR/library_data.yaml -g http://localhost:8080
-u $GALAXY_DEFAULT_ADMIN_USER -p $GALAXY_DEFAULT_ADMIN_PASSWORD
The actual data is references in a YAML file similar this one .
installing workflows
workflow-install --workflow_path $GALAXY_HOME/workflows/ -g http://localhost:8080
-u $GALAXY_DEFAULT_ADMIN_USER -p $GALAXY_DEFAULT_ADMIN_PASSWORD
Where all Galaxy workflows needs to be in one directory, here the
$GALAXY_HOME/workflows/
.
running Galaxy data-managers to create indices or download data
run-data-managers -u $GALAXY_DEFAULT_ADMIN_USER -p $GALAXY_DEFAULT_ADMIN_PASSWORD -g http://localhost:8080
--config data_manager_rna_seq.yaml
The data-managers can be configured and specified in a YAML file similar to this one .
If you host your flavor on GitHub consider to test our build with Travis-CI. This project will help you: https://github.com/bgruening/galaxy-flavor-testing