README.md 2.78 KB
Newer Older
benedikt.kroening's avatar
benedikt.kroening committed
1
2
3
# Open-Xchange App Suite Installer script collection

This collection contains several scripts for letting you install a fully fledged Open-Xchange environment.
benedikt.kroening's avatar
benedikt.kroening committed
4
By default this will install a singlenode environment consisting of:
benedikt.kroening's avatar
benedikt.kroening committed
5
6
7
8
9
10
11
    - Database (mysql or mariadb)
    - Open-Xchange middleware
    - Apache2 Frontend

## Configuration

Basic Configuration is located inside the file `config/config`.
benedikt.kroening's avatar
benedikt.kroening committed
12
Most optiony can be overriden by using each shell-scripts parameters (sometimes described in the help text)
benedikt.kroening's avatar
benedikt.kroening committed
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

## 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!

benedikt.kroening's avatar
benedikt.kroening committed
29
` $ ./ox-installer --help `
benedikt.kroening's avatar
benedikt.kroening committed
30

benedikt.kroening's avatar
benedikt.kroening committed
31
### Install singlenode with everything you need
benedikt.kroening's avatar
benedikt.kroening committed
32
33
34

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

benedikt.kroening's avatar
benedikt.kroening committed
37
` $ ./ox-installer.sh --singlenode `
benedikt.kroening's avatar
benedikt.kroening committed
38
39
40

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

benedikt.kroening's avatar
benedikt.kroening committed
41
42
43
44
45
46
47
48
49
50
51
52
53
54
### Add additiional features/components
Whenever you feel that you might want to test additional components you can install or enable them.

#### Guard / Documents
Simply provide the parameter (only one or both) and the installer will add missing packages/configs:

` $ ./ox-installer.sh --guard --documents`

#### 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 `

benedikt.kroening's avatar
benedikt.kroening committed
55
56
57
58
59
60
## 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.

benedikt.kroening's avatar
benedikt.kroening committed
61
62
63
64
### Build docker images
The installer script can be used as it is for docker environments. Take a look into the docker/ directory for an singlenode example.
You can configure this environment by editing the 'docker/config' file.
In order to build an image execute the build script:
benedikt.kroening's avatar
benedikt.kroening committed
65

benedikt.kroening's avatar
benedikt.kroening committed
66
`$ docker/build.sh`
benedikt.kroening's avatar
benedikt.kroening committed
67
68
69
70
71
72
73
74
75
76
77
78
79
80

### Start it

If you have docker-compose available you can use it to start the provided compose-environment

`$ docker-compose up`

### Stop it

`$ docker-compose down -v`

### Clean it up

`$ rm -fr .runtime/`