Install from Repository (Debian, Ubuntu)

There is a Debian software repository (DEB) available for Debian-based Linux distributions provided by Greg Logan, and hosted at University of Osnabrück. This repository provides prebuilt Opencast installations, including all 3rd-Party-Tools. Using this method, you do not have to compile the software by yourself, but you still need to configure it.

It may also be interesting for developers as all dependencies for Opencast usage, testing and development are provided by the Debian repository.

Availability

Note that it may take some time (usually about a week after a new release is out) before the Debian packages are available. Watch for announcements on list or just check which versions are available in the repository.

Currently Supported

Supported JDKs

For Opencast 10 and newer we support JDK 11 only.

Activate Repository

First you have to install the necessary repositories so that your package manager can access them:

Install Elasticsearch

Starting with Opencast 9, Elasticsearch is now a dependency. Our packages do not explicitly depend on Elasticsearch because it runs externally to Opencast. By default we expect Elasticsearch to be running on the admin node, however you can configure the URL in Opencast's configuration files.

In our repository we provide validated Elasticsearch packages copied from the upstream repository. Installation can be accomplished by running the following:

apt-get install elasticsearch-oss

If you wish to use the upstream Elasticsearch repository directly be aware that Opencast only formally supports Elasticsearch versions with the same major and minor version values. That is, if our 9.x repository has Elasticsearch 7.9.2 then Opencast only formally supports Elasticsearch versions starting with 7.9.

The default Elasticsearch configuration should work for Opencast out of the box, however there is one change you should make. Log4Shell affects Elasticsearch, and you should mitigate this by adding a file at /etc/elasticsearch/jvm.options.d/log4shell.options with the content:

-Dlog4j2.formatMsgNoLookups=true

This applies a mitigation for the security issue. Once applied, you should restart Elasticsearch.

Finally, make sure to start and enable the service:

systemctl start elasticsearch
systemctl enable elasticsearch

Install Opencast

Basic Installation

For a basic installation (All-In-One) just run:

apt-get install opencast-12-allinone elasticsearch-oss

This will install the default distribution of Opencast and all its dependencies, including the 3rd-Party-Tools. Note that while the repository provides a packaged version of FFmpeg, your distribution may have a version which is pre-installed or otherwise takes precedence. This version may work, however Opencast only formally supports the version(s) in the repository. To install the Opencast version of ffmpeg add ffmpeg-dist to the end of the command above. For more options, see the advanced installation section below.

Configuration

Make sure to set your hostname, login information and other configuration details by following the

Start Opencast

Finally, start and enable Opencast by running:

systemctl start opencast.service
systemctl enable opencast.service

Advanced Installation

While the basic installation will give you an all-in-one Opencast distribution which is nice for testing, you might want to have more control over your system and deploy it over several machines by choosing which parts of Opencast you want to install. You can list all Opencast packages with:

apt-cache search opencast

This will list all available Opencast distributions in the form opencast-<version>-<dist-type>

Some available distributions are:

…where X stands for a specific Opencast version. These packages will install the latest release for a given version, so opencast-12-admin will install the admin profile for Opencast 12.x. Once an update to Opencast 12 has been released an apt-get update followed by apt-get upgrade will upgrade you to the latest Opencast 12 release.

To list all available packages and versions, use:

apt list 'opencast*'

Point Revisions (Experts only)

If for some reason you wish to install a specific point revision of Opencast, and the repository still hosts that point revision, you can select it by adding it, and the packaging build, to your apt-get install line. For example:

apt-get install opencast-12-admin=12.0-2

Installs an Opencast 12.0 admin node, using the second build of that series. Not all series have more than a single build, and older point revisions may be removed once superceded, so please explore the repository prior to attempting this.

Install 3rd-party-tools

This step is optional and only recommended for those who want to build Opencast from source. If you install Opencast from the repository, all necessary dependencies will be installed automatically.

You can install all necessary 3rd-Party-Tools for Opencast like this:

apt-get install ffmpeg-dist tesseract-ocr sox hunspell netcat

Upgrading Major Versions

Note: All upgrade between major versions are required. If you want to upgrade Opencast 8 to Opencast 10 you have to first upgrade to Opencast 9.

While these packages will automatically upgrade you to the latest point version in a release series, they do not automatically upgrade you to the latest major version. In other words, if you install opencast-9-admin you get the latest 9.x release, not the latest 10.x release. To upgrade from one version to another you first stop Opencast:

    systemctl stop opencast.service

As a reminder, these instructions will change your Opencast installation, and files to a new version which is likely incompatible with older versions. If you are performing this on a production system, please ensure you have valid backups prior to taking the next steps.

Uninstall your current Opencast packaging (using Opencast 8 as an example):

apt-get remove opencast-8-*

Then install the new version (using Opencast 9 as an example):

apt-get install opencast-9-allinone

At this point you must follow the relevant upgrade instructions, prior to starting Opencast again.

Uninstall Opencast

To uninstall Opencast, you can run:

apt-get remove 'opencast*'

This will not touch your created media files or modified configuration files. If you want to remove them as well, you have to do that by yourself.

# Remove media files
sudo rm -rf /srv/opencast

# Remove local db, search indexes and working files
sudo rm -rf /var/lib/opencast

# Remove configuration files
sudo rm -rf /etc/opencast

# Remove logs
sudo rm -rf /var/log/opencast

Troubleshooting

Missing Dependencies

This repository expects that the stable section is always available, regardless of which version of Opencast you have installed. The 3rd party tools (e.g. FFmpeg) may or may not be in the other sections, but if they are there it is only during a testing period for a new version. For day-to-day use, please install them from stable!