Skip to content

docker composition for all pandora containers

Notifications You must be signed in to change notification settings

pan-dora/pandora

Repository files navigation

Pandora Ecosystem

The "Presentation of Annotations in a Digital Object Repository Architecture" provides a sustainable, flexible and extensible IIIF image publishing and metadata development ecosystem.

This repository provides a Docker composition and demonstration for various Pandora Ecosystem components. To see an example of what Pandora can do, see this video

See also diagrams for the Pandora architecture and production process.

Resources

Installation

Docker

See this page for more information on getting started with Docker for your platform.

Docker Networking

  • This demo uses IPv6 networking. To enable this for your host's docker service, add this configuration to the daemon.json file:
{
  "ipv6": true,
  "fixed-cidr-v6": "2001:db8:1::/64"
}

Docker Compose

After installing one of the three variants of Docker and Docker Compose, verify that you have the Docker platform installed correctly. Obtain a command shell and run:

docker -v
docker-compose -v

If either of these commands fail to print out version information, then you'll need to troubleshoot your installation before moving forward. A recent version of Docker should suffice, but if you have trouble running the milestone with older versions of Docker, please let us know, and upgrade to the latest version before trying the milestone again.

Getting Started

To bring up the environment, you need to:

  1. Install Docker and verify the installation (above)
  2. Retrieve the docker-compose.yml file for this demo.
  • Clone this git repository:

        git clone https://github.com/pan-dora/pandora-demo.git.            
    

This will create a directory pandora-demo

  1. cd into the directory containing the docker-compose file
  2. Create a docker host data directories in /mnt/pandora-data/. This will persist all user entered data. Note that you will have to uncomment these lines in the docker-compose.yml for this to happen.
  3. Invoke docker-compose up to run in foreground (useful for interactive monitoring) (or add -d for daemonized to run in the background)

Depending on the speed of your platform, it may take some time for the containers to download and to start. Total size is ~8GB.

The containers should only be downloaded once.
Subsequent invocation of docker-compose should be faster, since the images will not need to be downloaded.

Note: To destroy the environment, run docker-compose down; this will stop all services and remove all data, such that the next time you start the environment, it will be starting up from scratch. To stop the environment, run docker-compose stop; this will shut down the environment, but keep the data so that you can resume where you left off. Use docker-compose up -d to start or re-start the environment.

Verification

  • Visit http://localhost:3099/{$collection}/{$object} and see your manifest
  • Visit http://localhost:8080/fcrepo/rest and see the Fedora REST API web page
  • Visit http://localhost:3030/fuseki and see the SPARQL endpoint
  • Visit http://localhost:5004 and see the Loris Image Server default response
  • Visit http://localhost:8181/activemqweb and see the ActiveMQ console
  • Visit http://localhost:9001 and see the Universal Viewer
  • Visit http://localhost:9000 and see Mirador SUL

Once you can verify that the environment is up and working, you may read the wiki or move on to some of the sample tutorials.

Image descriptions

This demonstration depends on the following images that will be run in containers orchestrated by docker-compose:

  • fcrepo - Provides a Fedora 4.8.0 configured for external ActiveMQ JMS Queue Integration.

  • fuseki - Provides a triplestore

  • apix-sparqler-public-api - a node JS app that serves and caches SPARQL query responses provided by the apix-sparqler extension

  • loris - An IIIF Image API 2.0 image server that supports JP2 decompression

  • universal viewer - A IIIF viewer web app client

  • mirador SUL - A IIIF viewer with a persistent annotation store.

APIX Services

These primary APIX service containers (karaf) are also included in the docker-compose file:

image-services

messaging

exts-sparqler

See individual repositories for the docker image builds and DSL sources.

Client

  • See the modeller. A client tool that facilitates data ingest and packaging.

Initialization

  • Api-X does not have a mechanism to reinitialize the service registry after the service loader has registered the extensions.
    Thus, please stop and restart the composition before loading data.

Credit

The current project build depends on outstanding software development projects (by others).

Including (but not limited to):

About

docker composition for all pandora containers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published