Public | Automated Build

Last pushed: a month ago
Short Description
POTAGE: Integration of map location, gene expression and inferred functional annotation for wheat.
Full Description

Supported tags and respective Dockerfile links

What is POTAGE?

POTAGE (pronounced "pəʊˈtɑːʒ") is a web-based tool for integrating genetic map location with gene expression data and inferred functional annotation in wheat.

POTAGE Web Server

You can access the public POTAGE web server ( which contains a limited number of published gene
expression data sets.

How to use this image

Quick Start

We assume you are running docker >= v1.9.0. If not, the docker volume command will not work

# Create a volume for persistent storage of the BLAST databases
$ docker volume create --name potage_blastdb
# Create a log file on the host for the persistent storage of POTAGE visitor information
$ sudo touch /var/log/potage_visits.log
# Create a running container from the POTAGE image
#   It will be accessible from http://host-ip/potage
$ docker run --detach \
  --name POTAGE  \
  --publish 80:8080 \
  --volume "potage_blastdb:/var/tomcat/persist/potage_data/global/blast_db" \
  --volume "/var/log/potage_visits.log:/var/tomcat/persist/potage_data/visits.txt" \
# Download and setup the BLAST database
#   Getting files from URGI by default
$ docker exec POTAGE \

You should now be able to access POTAGE by visiting http://hostname/potage

start a POTAGE instance

$ docker run --detach --name POTAGE crobiad/potage

You can test if it running by visiting http://container-ip:8080/potage in your browser. To find the IP address of the container run this:

$ docker inspect \
  --format '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' POTAGE

If you need access to the container from outside the host running docker, on port 8888 for example:

$ docker run --detach --name POTAGE --publish 8888:8080 crobiad/potage

You can then go to http://localhost:8888/potage or http://host-ip:8888/potage or http://hostname:8888/potage

start with persistent storage

Data created and written by a container is not persistent. That is, once the container ceases to exist any data/files created by the container no longer exist. This presents a problem for POTAGE since it needs to download a large amount of data and setup a BLAST database. If this information was lost each time a container was stopped, you could waste a lot of time and network bandwidth re-downloading and formatting this data.

To get around this issue, we will use docker volumes. Docker takes care of managing the location of the files written to the volume, all we need to do is to create the volume and then tell docker where to mount the volume in the container:

$ docker volume create --name potage_blastdb
$ docker run --detach \
  --name POTAGE \
  --volume "potage_blastdb:/var/tomcat/persist/potage_data/global/blast_db" \

setup the BLAST database

POTAGE uses a BLAST database of the International Wheat Genome Sequencing Consortium's (IWGSC) Chromosomal Survey Sequences (CSS). Once you have a POTAGE container running, preferably with persistent storage attached you can download and setup the required BLAST database:

$ docker exec POTAGE setup_db

By default, the data will be retrieved directly from URGI. This can be slow for a variety of reasons, including your geographic location, load on the URGI network etc. For this reason we have created a copy of this data on the NeCTAR Research Cloud in Australia. To use this mirror, simply specify a BASE_URL:

$ docker exec POTAGE \
  setup_db \


User Feedback



For information on conributing, please see our Contribution Guidelines.


Docker Pull Command
Source Repository

Comments (0)