Coder Social home page Coder Social logo

aberowl-meta's Introduction

AberOWL-meta

This repository contains a collection of install scripts and subdirectories for setting up the AberOWL framework.

What is AberOWL?

AberOWL is a framework for ontology-based access to biological data.

Documentation

Documentation is available at aber-owl.net.

Dependencies

Redis

Redis is an in-memory database that persists on disk, and allows for fast ontoloy indexing.

You can either install this using your package manager, or follow these simple steps below to compile Redis from source.

wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make

And then just simply start Redis with the following command.

redis-server restart

node, node.js and npm

Node.js is a JavaScript platform for server-side programming, and npm is a JavaScript package manager.

Ubuntu 14.04 comes bundled with a distro-sable version of node, node,js and npm that can be installed directly from the default repositories.

Simply run.

sudo apt-get install nodejs nodejs-legacy npm

Groovy

Groovy is an alternative language for the JVM with a concise Java-friendly syntax, dynamic and static features, powerful DSL capabilities. AberOWL requires a Groovy version above version 2. If your package manager includes an ancient version of Groovy, you can easily use the sdkman tool to install a recent version: http://www.groovy-lang.org/install.html#_gvm_the_groovy_environment_manager

Apache

Apache is a popular open-source web server.

To install apache, use this command.

sudo apt-get install apache2

Installation

AberOWL is being actively developed, and you can clone its repository.

Clone the repository:

git clone https://github.com/bio-ontology-research-group/aberowl-meta

And then use the preconfigured install script to automatically set up the service:

./install

You will then need to reverse proxy the servers through apache. You can do this by editing the apache config file.

The relevant one is usually found at /etc/apache2/sites-enabled/000-default.conf.

You need to add:

ProxyPassReverse /service/ http://my.domain.name.uk:8080/
ProxyPass /service/ http://my.domain.name.uk:8080/

ProxyPass / http://my.domain.name.uk:3000/
ProxyPassReverse / http://my.domain.name.uk:3000/

Then, you need to add the module proxy to apache:

sudo a2enmod proxy

Note that the order is important. Apache must be restarted after changes.

sudo service apache2 restart

Configuration

Everything should work by default, however listed are a few configuration points throughout the applications:

AberOWL-sync

  • Configure the location of the AberOWL-server API endpoint using the ABEROWL_API constant at the top of each RemoteOntologyDiscover.groovy and RemoteOntologyUpdate.groovy

AberOWL-server

  • The port listened on can be changed at the top of AberOWLServer.groovy. Note that changes will have to be accounted for in the Apache configuration.

AberOWL-web

  • The port listened on can be changed at the top of bin/www. Note that changes will have to be accounted for in the Apache configuration.

Running

Once you are in the aberowl-meta directory, To run the server simply run:

cd aberowl-server ;  groovy AberOWLServer.groovy [PORT]

Where [PORT] is the port for the AberOWL service to listen on e.g. 9999.

To run the web front-end:

cd aberowl-web ; bin/www

[obsolete and replaced by Jenkins scripts] To run the sync, follow these commands:

cd aberowl-sync ; groovy RemoteOntologyDiscover.groovy && groovy RemoteOntologyUpdate.groovy

Contributions

You can open an issue on our issues page, or ask directly on our mailing list.

License

Code released under the Apache 2.0 license. For more information, please see the LICENSE file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.