Skip to content

Islandora Enterprise (ISLE) is a community project that addresses two of the most significant pain-points in Islandora: installation and maintenance.

License

Notifications You must be signed in to change notification settings

g7morris/ISLE

 
 

Repository files navigation

ISLE: Islandora Enterprise

Introduction

ISLE uses replaceable Docker images to streamline and largely automate the process of installing and maintaining the entire Islandora 7.x stack, while at the same time enabling institutions to create customizations that persist separately from core code. The result is the ability to easily, quickly and regularly update an institution’s entire Islandora stack. Maintaining ISLE requires significantly less time and staff, and also reduces the dependency on expert technical staff and outside vendors.

The ISLE project maintainers keep your Islandora stack smoothly running with minimal effort by regularly releasing updated (and tested) Docker images that contain up-to-date Islandora releases, software patches, security updates and feature improvements.

ISLE is quite flexible and may be run on an institution’s servers or in the cloud, or as a hybrid; similarly, it may be maintained by an institution’s staff, by a vendor, or as a shared project.

Documentation

Please use the ISLE Documentation for using ISLE to install Islandora on server environments.

Quick Start Guide

Important: This "Quick Start Guide" is for testing ISLE and should not be used in production.

Requirements

  • Docker-CE or EE version 19.03.x+
  • Docker-compose version 1.25.5+
  • Git 2.0+
  • Time required < 30 minutes.
  • Windows Users: Please open the .env and uncomment COMPOSE_CONVERT_WINDOWS_PATHS=1

Warnings & Notes

  • AS OF THE ISLE v.1.5.3 release in December 2020 (MANDATORY)
    • The ISLE maintainers in agreement with the wider Islandora community have changed the default branch of master to main to work towards a more inclusive and open culture with removing language like "master or slave" as an important step.
    • As a result the main branch will now be the default branch.
    • ISLE users will need to continue to checkout main and pull from main as they once did with the now defunct master on all of their projects.
      • git fetch --all
      • git checkout main
      • git pull origin main
    • All future releases will be built and tagged from the main branches on all ISLE Docker images Github repositories as well.
    • After December 2020, no more updates will be avaible from the master branch which will be deprecated and ultimately deleted in 2021.

Quick Start

  1. Please read: ISLE Release Candidate (RC): How to Test
  2. Clone this repo
    • git clone https://github.com/Islandora-Collaboration-Group/ISLE.git
  3. Change directory to the cloned directory:
    • cd ISLE (by default)
  4. Copy the sample.env to .env. By default, the Demo environment is setup. The .env is no longer tracked by git. (ISLE versions =< 1.4.2)
    • cp sample.env .env
  5. Pull the latest images:
    • docker-compose pull
  6. Launch the ISLE stack:
    • docker-compose up -d
    • Please note: the “ -d” argument stands for “detached” meaning the command will persist even if you close your terminal or your computer sleeps etc…)
  7. Please wait a few moments for the stack to fully come up. Approximately 3-5 minutes.
  8. Install Islandora on the isle-apache-ld container:
    • docker exec -it isle-apache-ld bash /utility-scripts/isle_drupal_build_tools/isle_islandora_installer.sh
  9. To wrap up testing:
    • In the folder with the docker-compose.yml docker-compose down -v (nb: the -v removes all volumes, and will delete any work. This option does not persist your data)

Quick Stop and Cleanup

If you have been testing the stack extensively you may want to prune your Docker daemon as you test.

  1. In the folder with the docker-compose.demo.yml
    • docker-compose down -v
  • If you would like to completely clean your docker-daemon:
  1. If you have no other stopped services that you do not want pruned on Docker:
    • Note running containers are NOT pruned.
    • docker system prune --all
    • answer Y to remove all unused volumes, images, and networks.
  • OR
  1. If you cannot prune:
    • docker ps and take note of any running ISLE services:
      • docker down {list of all the running ISLE services, tab auto-complete may work} (You may add as many containers as needed in one command.)
    • docker image ls and take note of all ISLE-related images:
      • docker image rm {list of all images to be removed, tab auto-complete may work} (Again, you may add as many as needed.)
    • docker volume ls and take note of all ISLE-related volumes:
      • docker volume rm {list of all volumes to be removed, tab auto-complete may work} (Again, you may add as many as needed.)
    • docker network ls and take note of all ISLE-related networks:
      • docker network rm {list of all networks to be removed, tab auto-complete may work} (Again, you may add as many as needed.)

Important Notes, Ports, Pages and Usernames/Passwords

Portainer is a GUI for managing Docker containers. It has been built into ISLE for your convenience.
Windows Users: Please open the .env and uncomment COMPOSE_CONVERT_WINDOWS_PATHS=1
Note that both HTTP and HTTPS work Please accept the self-signed certificate for testing when using HTTPS.

Locations, Ports:

Users and Passwords

Read as username:password

Islandora (Drupal) user and pass (default):

  • isle:isle

All Tomcat services come with the default users and passwords:

  • admin:isle_admin
  • manager:isle_manager

Portainer's authentication can be configured:

Maintainers

  • Gavin Morris, Born-Digital
  • Mark Sandford, Colgate University
  • David Keiser-Clark, Williams College

Former Contributors

  • Francesca Baird, Wesleyan University
  • Carolyn Moritz, Vassar College
  • Benjamin Rosner (Lead Maintainer 2018-19), Barnard College
  • Bethany Seeger (Lead Maintainer 2019), Amherst College
  • Shaun Trujillo, Mount Holyoke College
  • Steve Young, Hamilton College

Contributing to ISLE

About

Islandora Enterprise (ISLE) is a community project that addresses two of the most significant pain-points in Islandora: installation and maintenance.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 94.9%
  • Shell 5.1%