Refinery requires Python 2.7.3. For package dependencies please see requirements.txt. Requirements can be installed using pip as follows:
> pip install -U -r requirements.txt
You might need to install NumPy manually before running the above command (you can find the version in requirements.txt). For example:
> pip install numpy==1.7.0
We highly recommended to create a virtualenv for your Refinery installation.
Refinery uses Solr for searching and faceted browsing.
We recommend to run Solr using the bundled Jetty webserver. The Solr example configuration included in the standard download is sufficient and should be run like this:
cd <solr-download-directory>
java -Dsolr.solr.home=<refinery-installation-directory>/solr/ -jar start.jar > <path-to-solr-log-file> 2>&1 &
By default Jetty will allow connections to Solr from any IP address. This is not secure and not required to run Refinery. We recommend to allow connections to Solr only from localhost. Note that this requires Solr to run on the same host as Refinery. If Solr should run on another host change the IP address used below accordingly.
To configure Jetty to only accept connections from localhost do the following:
Go to <solr-download-directory>/etc.
Open jetty.xml.
Locate <Call name="addConnector"> in jetty.xml. Be aware that the default jetty.xml file contains an addConnector block that is commented out.
Supply a default value of “127.0.0.1” for the jetty.host system property used to configure Host as follows:
<Set name="Host"><SystemProperty name="jetty.host" default="127.0.0.1"/></Set>
Make sure that the jetty.host system variable is not set.
Restart Jetty using the command shown above.
In the settings_local.py of your Refinery installation configure REFINERY_SOLR_BASE_URL as follows:
REFINERY_SOLR_BASE_URL = "http://localhost:8983/solr/"
Restart the WSGI server running Refinery to reload your settings.
This is the preferred message broker for the Celery distributed task queue. Refinery uses Celery and RabbitMQ to handle long-running tasks.