For demonstration, development or testing purposes, RDMO can be installed on Linux, Windows and macOS. If you, however, to set up a production enviroment, serving RDMO over a Network or the Internet, we suggest that you use a recent Linux distribution, namely CentOS, Debian, or Ubuntu LTS.

The code is mainly written in Python and should work with a Python higher than 3.6.

An installation of RDMO contains of three parts:

  1. A directory which holds all the settings and customisations, custom to your installation of RDMO. We will call this directory rdmo-app, but you can use any name you see fit.
  2. The actual rdmo package, which is centrally maintained by the RDMO team, is installed as a dependency in a virtual environement.
  3. A database to store the content, which is generated by the users of your RDMO installation. Currently, we support Postgres, MySQL, and SQLite.

This chapter shows how these components are set up. Optional components can be installed afterwards and are covered under Configuration.

For testing and development, you can run RDMO using your regular user account. On a production system, a dedicated user account should be used. We suggest to create a user called rdmo with the group rdmo and the home directory /srv/rdmo: sudo adduser rdmo --home /srv/rdmo . We will use this user throughout this documantation.

Do not use the root user to run RDMO! It is a bad idea anyway and several steps of the installation will not work. sudo is used in the installation when needing root-privileges to install packages.