Ensembl Genomes Virtual Machine

Ensembl Genomes provides a pre-configured VirtualBox virtual machine (VM) running the latest Ensembl Genomes browser. The virtual machine can easily be configured to run any one of the five Ensembl Genomes divisions: Bacteria, Fungi, Metazoa, Plants, Protists.

Obtaining VirtualBox

Virtualbox is a free and opensource virtualisation platform used to run the Ensembl Genomes VM; it is necessary to download and install this package to run the VM. You can obtain it by visiting the VirtualBox downloads page and downloading and installing the appropriate standard virtual box platform package for your OS.

Download and import the virtual machine

The Ensembl Genomes virtual machine can be downloaded from ftp://ftp.ensemblgenomes.org/pub/current/virtual_machines/

Virtual machines are available for past releases of Ensembl Genomes from release 21 onwards. Images are located in the virtual_machines sub-directory of the appropriate release directory from ftp://ftp.ensemblgenomes.org/pub/

Once the download is complete, double click on the file which will cause VirtualBox to launch, then click "Import". If successful, you should see a VM named "EnsemblGenomes" listed in the left-hand panel.

Start and verfiy the Ensembl Genomes installation

Select the "EnsemblGenomes" VM from the left-hand panel, then click "Start".

Once the boot sequence has completed you should see a login prompt; but there is no need to login yet.

The Ensembl Genomes instance should now be running on port 8080. Verify this by visiting http://localhost:8080 in your web browser - you should see the EnsemblPlants homepage (if you don't see it, you may need to wait a minute or so for all the services to start up).

Changing the division

By default the VM is configured to run Ensembl Plants. To select a different division follow these steps:

  1. Log-in using the credentials
    username: eguser
    password: egpass
  2. Change to the browser directory
    [eguser@localhost ~]$ cd /ensembl/ensembl-genomes/current
  3. Edit the plugin configuration file and disable the Plants plugin by commenting the appropriate line, then enable your division of choice (e.g. Fungi) by uncommenting the appropriate line
    [eguser@localhost current]$ vi conf/Plugins.pm
    ...
    #'EG::Bacteria' => $SiteDefs::ENSEMBL_SERVERROOT.'/eg-plugins/bacteria',
    'EG::Fungi' => $SiteDefs::ENSEMBL_SERVERROOT.'/eg-plugins/fungi',
    #'EG::Metazoa' => $SiteDefs::ENSEMBL_SERVERROOT.'/eg-plugins/metazoa',
    #'EG::Plants' => $SiteDefs::ENSEMBL_SERVERROOT.'/eg-plugins/plants',
    #'EG::Protists' => $SiteDefs::ENSEMBL_SERVERROOT.'/eg-plugins/protists',
    ...
  4. Restart the Ensembl Genomes server
    [eguser@localhost current]$ eg-restart

SSH access

It should be possible to access the VM via SSH on port 8022 using the same credentials as above. E.g.

ssh -p8022 eguser@localhost

Configuring HTTP Proxy

If your network is behind a proxy server you will need to configure the Ensembl Genomes instance accordingly.

  1. Change to the browser directory
    [eguser@localhost ~]$ cd /ensembl/ensembl-genomes/current
  2. Add your proxy information to the defaults
    [eguser@localhost current]$ vi my-plugins/conf/ini-files/DEFAULTS.pm

    [general]
    ENSEMBL_WWW_PROXY = http://proxy.my-domain.com
    ENSEMBL_NO_PROXY = [ .my-domain.com ]
    SAMTOOLS_HTTP_PROXY = http://proxy.my-domain.com
  3. Restart the Ensembl Genomes server
    [eguser@localhost current]$ eg-restart

Hosting your own databases

By default the the VM is set up to use the public Ensembl Genomes MySQL databases, but if you have databases on your own MySQL server the VM can be configured to use them.

For more information on installing your own databsaes see Installing the Ensembl Data.

To update the database configuration:

  1. Change to the browser directory
    [eguser@localhost ~]$ cd /ensembl/ensembl-genomes/current
  2. Add the MySQL credentials, e.g.
    [eguser@localhost current]$ vi ensembl-webcode/my-plugins/conf/ini-files/DEFAULTS.pm

    [general]
    DATABASE_HOST = mysql.example.com
    DATABASE_HOST_PORT = 3306
    DATABASE_USER = username
    DATABASE_PASS = password
  3. Delete the cached config files and restart the Ensembl Genomes server
    [eguser@localhost current]$ rm ensembl-webcode/conf/packed/*
    [eguser@localhost current]$ eg-restart

Troubleshooting

Problems resolving http://dasregistry.org/das at server startup

If your server fails to start and reports a problem connecting to http://dasregistry.org/das, try increasing the DAS timeout as follows:

  1. Change to the browser directory
    [eguser@localhost ~]$ eg-current
  2. Increae the DAS timeout value
    [eguser@localhost current]$ vi my-plugins/conf/ini-files/DEFAULTS.pm

    [general]
    ENSEMBL_DAS_TIMEOUT = 20
  3. Restart the Ensembl Genomes server
    [eguser@localhost current]$ eg-restart