Skip to content

TAMU-CPT/docker-apollo

 
 

Repository files navigation

Apollo

Apollo Logo DOI

Apollo is a browser-based tool for visualisation and editing of sequence annotations. It is designed for distributed community annotation efforts, where numerous people may be working on the same sequences in geographically different locations; real-time updating keeps all users in sync during the editing process.

Running the Container

The container is publicly available as gmod/apollo:latest.

There are a large number of environment variables that can be adjusted to suit your site's needs. These can be seen in the apollo-config.groovy file.

Quickstart

This procedure starts tomcat in a standard virtualized environment with a PostgreSQL database with Chado.

Install docker for your system if not previously done.

Choose an option:

  • To test a versioned release to test installation, e.g.: docker run -it -p 8888:8080 quay.io/gmod/docker-apollo:2.2.0 Other available versions

  • Install a latest release to test installation: docker run -it -p 8888:8080 gmod/apollo:latest

    • To make sure you have the latest pull with docker pull gmod/apollo to fetch newer versions
  • If using within a larger context (e.g., as part of a docker-compose script) you can run an apollo-only branch provides only apollo + tomcat (no PostgreSQL):

    • docker run -it -p 8888:8080 gmod/apollo:apollo-only
  • To run in production against JBrowse data and a persistent database (you can create an empty directory called postgres-data):

    • docker run -it -v /jbrowse/root/directory/:/data -v postgres-data:/var/lib/postgresql -p 8888:8080 gmod/apollo:latest
  • You can run production using the build created by quay.io instead (https://quay.io/repository/gmod/docker-apollo):

    • docker run -it -v /jbrowse/root/directory/:/data -v postgres-data:/var/lib/postgresql -p 8888:8080 quay.io/gmod/docker-apollo:latest

In all cases, Apollo will be available at http://localhost:8888/ (or 8888 if you don't configure the port)

When you use the above mount directory /jbrowse/root/directory and your genome is in /jbrowse/root/directory/myawesomegenome you'll point to the directory: /data/myawesomegenome.

NOTE: If you don't use a locally mounted PostgreSQL database (e.g., creating an empty directory and mounting using -v postgres-data:/var/lib/postgresql) or set appropriate environment variables for a remote database ( see variables defined here) your annotations and setup will not be persisted.

Logging In

The default credentials in this image are:

Credentials
Username [email protected]
Password password

Example Workflow

  1. Make the following directories somewhere with write permissions: postgres-data and jbrowse-data.
  2. Copy your jbrowse data into jbrowse-data. We provide working sample data.
  3. Run the docker-command: docker run -it -v /absolute/path/to/jbrowse-data:/data -v /absolute/path/to/postgres-data:/var/lib/postgresql -p 8888:8080 quay.io/gmod/docker-apollo:latest
  4. Login to the server at http://localhost:8888/
  5. Add an organism per the instructions under Figure 2. Using yeast as an example, if you copy the data into jbrowse-data/yeast then on the server you'll add the directory: /data/yeast.

Chado

Chado support is now baked into the GMOD docker container image.

About

🐳 Apollo 2.X Docker Image

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 96.7%
  • Groovy 1.9%
  • Other 1.4%