GOlr: Installation: Difference between revisions
(13 intermediate revisions by 3 users not shown) | |||
Line 11: | Line 11: | ||
Jetty will need to be setup to start and listen to an external address if you want. | Jetty will need to be setup to start and listen to an external address if you want. | ||
=OWLTools= | |||
The owltools super JAR is now included with AmiGO in java/lib. | |||
=Solr with the GO Solr schema (GOlr)= | |||
==The "Ubuntu" way (YMMV)== | |||
While we have Jetty 8 installed from the Ubuntu repos, we have our own Solr (3.6, the one that comes with Ubuntu 12.04 is ancient) in the GOlr repo. Let's get that first and look at it; even if we don't use the GOlr repo's supplied schema.xml, some of the information in there can be helpful. All GOlr source is in the AmiGO 2 git repo: amigo/golr. If you have not already done so, get the AmiGO 2 repo. | |||
While we have Jetty installed from the Ubuntu repos, we have our own Solr (3.6, the one that comes with Ubuntu 12.04 is ancient) in the GOlr repo. Let's get that first and look at it; even if we don't use the GOlr repo's supplied schema.xml, some of the information in there can be helpful. All GOlr source is in the AmiGO 2 git repo: amigo/golr. If you have not already done so, get the AmiGO 2 repo. | |||
mkdir -p ~/local/src/git | mkdir -p ~/local/src/git | ||
cd ~/local/src/git | cd ~/local/src/git | ||
git clone git://github.com/ | git clone git://github.com/geneontology/amigo.git | ||
cd amigo/ | cd amigo | ||
npm install | |||
[cp appropriate conf/amigo.yaml into place] | |||
./node_modules/.bin/gulp install | |||
The solr.war for Jetty is at: | The solr.war for Jetty is at: | ||
Line 68: | Line 33: | ||
~/local/src/git/amigo/golr/solr/solr.war | ~/local/src/git/amigo/golr/solr/solr.war | ||
''Some'' systems may be able to deploy this with the make command: | |||
./node_modules/.bin/gulp golr-install | |||
This is not guaranteed as setups can vary quite a lot. Take a look at the very simple "golr-install" command in the gulpfile.js for the kinds of things that you might have to do (or not). | |||
Of course, it's important to remember that the most important end product of this section is to be using a correctly organized schema.xml file in a Solr 3.6 setup. However you accomplish that is fine. For example, the schema.xml file used by GO can be found at: | Of course, it's important to remember that the most important end product of this section is to be using a correctly organized schema.xml file in a Solr 3.6 setup. However you accomplish that is fine. For example, the schema.xml file used by GO can be found at: | ||
Line 80: | Line 45: | ||
Alternatively, you can generate a custom one by making sure that OWLTools is in the right place (check your environment and the Makefile) and running: | Alternatively, you can generate a custom one by making sure that OWLTools is in the right place (check your environment and the Makefile) and running: | ||
./node_modules/.bin/gulp golr-schema | |||
Also, the solrconfig.xml file in ~/local/src/git/amigo/golr/solr/conf/ might be also be useful in your setup. | Also, the solrconfig.xml file in ~/local/src/git/amigo/golr/solr/conf/ might be also be useful in your setup. | ||
== The fast-and-dirty(-but-always-works) way== | |||
Instead of running Solr in a separate Jetty (or Tomcat) server, an alternative is to get a standalone embedded instance of Solr running. | |||
# Download the latest Solr 3.6.x and unzip the archive in the desired folder. | |||
# In the unpacked archive, delete everything under the folder apache-solr-3.6.2/example/solr/conf and copy over the GOlr config files (schema.xml and solrconfig.xml) from amigo/golr/solr/conf/. | |||
# Finally start Solr from the folder apache-solr-3.6.2/example with: | |||
java -jar start.jar | |||
=Loading the data= | =Loading the data= | ||
Line 89: | Line 63: | ||
cd ~/local/src/svn | cd ~/local/src/svn | ||
svn checkout svn | svn checkout svn://ext.geneontology.org/trunk/experimental/trees/panther_data panther_data | ||
mkdir -p ~/local/src/svn/geneontology.org/trunk/experimental/trees/ | mkdir -p ~/local/src/svn/geneontology.org/trunk/experimental/trees/ | ||
mv panther_data ~/local/src/svn/geneontology.org/trunk/experimental/trees/ | mv panther_data ~/local/src/svn/geneontology.org/trunk/experimental/trees/ | ||
Line 95: | Line 69: | ||
Or something similar--you just need the tree data in the right spot. These are optional and can be left out entirely if you don't need it. | Or something similar--you just need the tree data in the right spot. These are optional and can be left out entirely if you don't need it. | ||
As an example, we will use the | As an example, we will use the gulpfile.js to do a standard load: | ||
./node_modules/.bin/gulp load-all | |||
And that should be it. | And that should be it. |
Latest revision as of 17:40, 7 October 2015
These instructions are intended to illustrate how to install the GOlr server software for AmiGO 2 on a Ubuntu 12.04 LTS Desktop. With careful reading, these instructions should be generalizable to other cases.
General notes
The following packages are required:
- openjdk-6-jdk (although be believe Java 7 might be an option for OWLTools)
- jetty
- subversion
Jetty will need to be setup to start and listen to an external address if you want.
OWLTools
The owltools super JAR is now included with AmiGO in java/lib.
Solr with the GO Solr schema (GOlr)
The "Ubuntu" way (YMMV)
While we have Jetty 8 installed from the Ubuntu repos, we have our own Solr (3.6, the one that comes with Ubuntu 12.04 is ancient) in the GOlr repo. Let's get that first and look at it; even if we don't use the GOlr repo's supplied schema.xml, some of the information in there can be helpful. All GOlr source is in the AmiGO 2 git repo: amigo/golr. If you have not already done so, get the AmiGO 2 repo.
mkdir -p ~/local/src/git cd ~/local/src/git git clone git://github.com/geneontology/amigo.git cd amigo npm install [cp appropriate conf/amigo.yaml into place] ./node_modules/.bin/gulp install
The solr.war for Jetty is at:
~/local/src/git/amigo/golr/solr/solr.war
Some systems may be able to deploy this with the make command:
./node_modules/.bin/gulp golr-install
This is not guaranteed as setups can vary quite a lot. Take a look at the very simple "golr-install" command in the gulpfile.js for the kinds of things that you might have to do (or not).
Of course, it's important to remember that the most important end product of this section is to be using a correctly organized schema.xml file in a Solr 3.6 setup. However you accomplish that is fine. For example, the schema.xml file used by GO can be found at:
~/local/src/git/amigo/golr/solr/conf/schema.xml
Alternatively, you can generate a custom one by making sure that OWLTools is in the right place (check your environment and the Makefile) and running:
./node_modules/.bin/gulp golr-schema
Also, the solrconfig.xml file in ~/local/src/git/amigo/golr/solr/conf/ might be also be useful in your setup.
The fast-and-dirty(-but-always-works) way
Instead of running Solr in a separate Jetty (or Tomcat) server, an alternative is to get a standalone embedded instance of Solr running.
- Download the latest Solr 3.6.x and unzip the archive in the desired folder.
- In the unpacked archive, delete everything under the folder apache-solr-3.6.2/example/solr/conf and copy over the GOlr config files (schema.xml and solrconfig.xml) from amigo/golr/solr/conf/.
- Finally start Solr from the folder apache-solr-3.6.2/example with:
java -jar start.jar
Loading the data
More memory is always welcome, but less is probably sufficient. The PANTHER section needs some special care. If you leave the PANTHER flags in the Makefile as they are now, you will need to make sure that they are there. Without checking out the whole (very large) tree, as a GOC member:
cd ~/local/src/svn svn checkout svn://ext.geneontology.org/trunk/experimental/trees/panther_data panther_data mkdir -p ~/local/src/svn/geneontology.org/trunk/experimental/trees/ mv panther_data ~/local/src/svn/geneontology.org/trunk/experimental/trees/
Or something similar--you just need the tree data in the right spot. These are optional and can be left out entirely if you don't need it.
As an example, we will use the gulpfile.js to do a standard load:
./node_modules/.bin/gulp load-all
And that should be it.
Remember that if you are using a caching server on the frontend that you will need to purge the caches.