Introduction
DuraCloud for Research application software is composed of many parts. A breakdown of the primary pieces is as follows:
- DuraCloud
- DuraStore - this web application provides the access to and management of storage resources, which includes handling the storage portion of the DuraCloud REST API
- DuraCloud for Research
- Rich Object Creation Service - a service that creates Fedora digital objects that organize and enhance resources, and ingests them into a Fedora Repository
- Service Execution Environment - the integration framework on which the ROCS is deployed
- UpSync Tool - a client tool that monitors a filesystem, and upload files and filesystem metadata to DuraCloud when files are added or changed
- Sidora (for demonstration)
- Sidora Server - a Drupal plus Islandora-based "Virtual Research Environment" that provides a GUI for interacting with the resources to perform research, enhance and organize the data
- Fedora Repository - provides access to the Fedora digital objects and resources to Sidora (or other services), primarily from DuraCloud storage
This guide lays out the steps necessary to begin using DfR:
- Obtain user credentials for a running DuraStore instance
- Obtain user credentials for a running Fedora instance (this may be supplied by Sidora)
- Obtain the DfR applications
- Build and deploy the DfR applications
- Initialize the DfR applications
- Test your installation
Although this document is written from a Linux environment perspective, analogous builds/installations have been tested in Windows and OSX. Any comments or feedback are welcomed. In particular, UpSync runs in the end-user's computing environment and is often deployed in a desktop operating system like Microsoft Windows or OSX.
Prerequisites
Software that must be installed on your system prior to building/using DuraCloud
- Maven 2.2.1 (build on Maven 3 have not been tested)
- Tomcat 6.x or above, or Jetty (pre-installed for deployment, Jetty is used automatically during the build)
- Java 7
- Git 1.7 or higher
To run the UI tests (dfr-sync) you need to install:
- xvfb (Linux)
Setting up DfR
Any portions of the configuration below for which you need to include a replacement value will be written in all capital letters and included in brackets: [LIKE-THIS]
Build and deploy the DfR applications
Clone the DfR repository from GitHub
git clone https://github.com/duraspace/dfr.git
Set environment variables
export JAVA_OPTS="-XX:MaxPermSize=256m" export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=1024m"
- Configure Maven2 using your preferred method for configuring its properties
Add tomcat user to $M2_HOME/conf/settings.xml
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <localRepository/> <interactiveMode/> <usePluginRegistry/> <offline/> <pluginGroups/> <servers/> <mirrors/> <proxies/> <profiles> <profile> <id>ocs-integration-test</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <fedora.baseurl>http://dfr.duracloud.org:8080/fedora</fedora.baseurl> <fedora.password>changeme!</fedora.password> <duracloud.password>changeme!</duracloud.password> </properties> </profile> </profiles> <activeProfiles/> </settings>
- Build
From top of source tree
mvn clean install
- Configure Tomcat Manager (for deployment)
Add to $CATALINA_HOME/conf/tomcat-users.xml
<tomcat-users> <role rolename="manager"/> <role rolename="admin"/> <user username="[ANY-USERNAME]" password="[ANY-PASSWORD]" roles="admin,manager"/> </tomcat-users>
Start tomcat
$CATALINA_HOME/bin/startup.sh
Use the Tomcat Manager application to deploy the dfr-webapp.war
Test your installation
- Once all of the above steps have been completed, your DfR installation should be ready to test.
- Congratulations! You now have a functional DuraCloud installation.
Optional items
Logging
- DfR uses the SLF4j logging framework backed by the LogBack implementation
- By adding either a logback.xml or logback-test.xml file on the classpath, logging configuration can be customized
Installing and Configuring UpSync
UpSync
- This tool provides an installer for the DfR UpSync tool
To run the UpSync obtain the tool installer Jar