Skip to content
Snippets Groups Projects
user avatar
Benedikt Kroening authored
in preperation for mariadb, now with configurable mysql version support (works on Debian 9/10, CentOS6/7)
c591db2e
History

Open-Xchange App Suite Installer script collection

This collection contains several scripts for letting you install a fully fledged Open-Xchange environment. By default this will install a singlenode environment consisting of: - Database (mysql or mariadb) - Open-Xchange middleware - Apache2 Frontend

Configuration

Basic Configuration is located inside the file config/config. Most options can be overriden by using each shell-scripts parameters (sometimes described in the help text)

Docker configuration

The docker configuration is located at docker/config and will override values from the above default config. You may also override config by providing environmental variables.

Versions

Versions can be configured at setup/versions Check that file for more information.

Good to know

This script collection has its roots in the old ox-quickinstall (or installer). Much of the install logic for the different distros was simply taken from there and still can be found at lib/common.bash

How to use

Simple cli examples of how to use this

It is always a good idea to read documentation or help texts!

$ ./ox-installer --help

Install singlenode with everything you need

Right now only frontend (apache), middleware and a database are installed. It uses dovecot.qa.open-xchange.com as mail backend. Please note that the '--singlenode' may be ommited as it is already set in 'config/config'

$ ./ox-installer.sh --singlenode

You can supply each component individually. Read the help text for more information.

Add additiional features/components

Whenever you feel that you might want to test additional components you can install or enable them. Take a look at the features/ direcotry for the feature related scripts. These scripts will install and configure the feature.

Guard

To enable / install guard on a node simply execute:

$ features/guard.sh --install --enable

If you are using the docker environment you can enable guard by executing the installer inside the running container:

$ docker-compose exec singlenode bash -c "/ox-installer/features/guard.sh --install --enable"

additional features

Take a look into the 'features' folder. You may enable/disable additional featues by executing those scripts.

This script is just an teamplate for later use, it does nothing, just sits there waiting to be copied to an actual feature... $ features/feature-template.sh --enable --restart

Docker

This installer supports creation of Open-Xchange docker images. These images will use supervisord as process monitor. Right now it creates a simple groupware image (apache2, ox frontend, ox middleware). Seperate mail and database services are required. Take a look at the docker-compose.yml at the root level of this repo.

Build docker images

The installer script can be used as it is for docker environments. Take a look into the docker/ directory for some examples. You can configure these environments by editing the 'docker//config' file (e.g. docker/singlenode/config). In order to build an singlenode image execute the build script:

$ docker/build.sh --singlenode

This will automatically install OX App Suite, Guard, Documents (including documents collaboration) and the documentconverter server. The image will be tagged with the AS_BACKEND_VERSION-variable (setup/versions) and the latest tag on each build.

Start it

If you have docker-compose available you can use it to start the provided compose-environment, but make sure to be in the correct directory.

$ cd <repo>/docker/singlenode $ docker-compose up

Any runtime related files will be stored at <repo>/docker/<env>/.runtime (e.g. /docker/singlenode/.runtime)

Stop it

$ docker-compose down -v

Clean it up

$ rm -fr .runtime/