Skip to content

Docker image definitions for digital exhibits hosted on the Omeka-S platform

Notifications You must be signed in to change notification settings

uoregon-libraries/digital-exhibits-omeka-s

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 

Repository files navigation

UO Libraries Omeka-S Digital Exhibits

The University of Oregon has two instances of Omeka-S: Red and Mellon.

Red houses the 'Red Thread' digital exhibit at https://redthread.uoregon.edu.

Mellon hosts 'Tekagami and Kyōgire', 'The Artful Fabric of Collecting', 'Windows to the Ainu World', 'Yokai Senjafuda', and other under-construction exhibits at https://glam.uoregon.edu.

These two instances are separate because of some custom features that were built into Red Thread.

Both instances are running Omeka-S v3.2.3. The sites are using the following custom light and dark UO libraries themes:

Local Development

Building image

The first step in running both Mellon and Red is building the base image defined in the base-image directory. The Omeka version number is also used as the APP_VERSION number in base-image/env_make and can be used to tag the docker image. To build the image, run

make

in the base-image directory. And optionally, to tag as the latest version, or with the specific Omeka version, run

make tag-latest

and/or

make tag-version

Then, to build the specific instance of Omeka, cd into the corresponding subdirectory of the sites directory, and repeat the make process there.

You will also need to create a .env file, and docker-compose.override to set up the db container. For local development, you can copy the contents of .env.example and docker-compose.override.example.

Use docker-compose up to start the specific container.

Database Setup

You will need a sql dump of the production image which you will need to copy into the db container and set up. Be careful as this will be a full reset of the database. The steps are as follows

docker cp SQL_DUMP_FILE.sql DB_CONTAINER_ID:/tmp
docker-compose exec db bash
mysql -u DB_USER -p
drop database DB_NAME;
create database DB_NAME;
quit
mysql -u DB_USER -p DB_NAME < /tmp/SQL_DUMP_FILE.sql
exit

Afterwards, migrate the database, and go to the localhost version of the site where you should see a log-in screen.

User Setup

If you are not already set up as an administrator for the instance, manually add yourself to the sql dump file used in the previous step. The other admins are defined in the user table.

The password can be hashed using the default php password_hash() function (for php 7.1).

Static Files

In production, both instances of Omeka serve static files from a mounted directory on a UO server. The location of this directory will be specified as a volume in the docker-compose.override file.

In development, the containers will serve static images from a local directory. Again, this will be reflected in the docker-compose override. The container will need to have write privileges to this directory in order to install Omeka-S correctly.

Other Config

Footers

The footer content for the dark theme is hard-coded into the theme, so if any other site wants to use the dark theme, that will have to change.

As for the light theme, each site has it’s own footer content settings that can be modified in the theme settings in the admin interface. This content is stored in the READMEs in each direct subdirectory of sites.

CSS Editor Module

Some additional inline css is defined in the CSS Editor module in the admin interface. This is only relevant for Red and can be found in sites/red/README.md.

For Future Upgrades

In the case of a future upgrade, the following things will need to happen:

  • Upgrade php version in base-image/Dockerfile
  • Upgrade Omeka S version in base-image/Dockerfile
  • Update any dependencies in base-image/Dockerfile that may have changed in the new php version
  • Update dark and light themes in their respective repositories to be compatible with new Omeka version
  • Update theme versions in sites/INSTANCE/themes
  • Update module versions in sites/INSTANCE/modules (https://omeka.org/s/modules is a good resource for this)
  • Update APP_VERSION in the different env_make files

About

Docker image definitions for digital exhibits hosted on the Omeka-S platform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published