Skip to content

19.1 Installation using egroupware docker RPM DEB package

Ralf Becker edited this page Feb 24, 2021 · 22 revisions

Please also note the release notes and distribution specific instructions

The 19.1+ installation is based on Docker, even for the DEB or RPM packages. The only requirement for the host system is Docker and for DEB/RPM packages a recent MariaDB or MySQL. Docker and the database are installed with/by EGroupware in the correct versions. There is no previous installation necessary and also not reasonable.

There is no difference in most parts of the installation between community edition (CE) and EGroupware GmbH EPL version. Same is true for an in-place upgrade from 17.1 and a new installation.

You first need to create a repository file for your Linux distribution and version and import the key for it. I'll show it here in details for Ubuntu 18.04, for other distributions use the above link. This is NOT necessary if you update, unless you use EPL, which used a different repo before.

echo 'deb http://download.opensuse.org/repositories/server:/eGroupWare/xUbuntu_18.04/ /' | \ 
   sudo tee /etc/apt/sources.list.d/server:eGroupWare.list
apt-get install gnupg # required, but not installed by apt-key add
wget -nv https://download.opensuse.org/repositories/server:eGroupWare/xUbuntu_18.04/Release.key -O - | \
   sudo apt-key add -

Run the following commands as root on Ubuntu 18.04 to install or update EGroupware:

sudo apt-get update
sudo apt-get install egroupware-docker

This will use Apache as webserver on the host for new installation and whatever was already used for updates. If you prefer to use Nginx on Debian or Ubuntu for new installations, just add "nginx" before egroupware-docker in the above command. Nginx on the host is currently not supported for RHEL/CentOS/SUSE!

Package installation under Debian/Ubuntu/SUSE recommends Collabora Online Office, which mean it will be installed by default, unless you opt out by using --no-install-recommends on the command line. Doing so you have to take care of explicitly installing MariaDB! Of cause you can always deinstall them after testing, if you prefer to use something else.

If this is a new installation and you missed the credentials of your first EGroupware admin user "sysop" or the EGroupware setup user "admin", you can always find them under /var/lib/egroupware/egroupware-docker-install.log.

How to install EGroupware GmbH's EPL version

The update described above will remove the EPL packages, of cause leaving your data intact. To install the EPL source / run the EPL container you need your download.egroupware.org credentials and run the following command:

/etc/egroupware-docker/use-epl.sh

It will ask your EPL repo credentials, add them and the EPL image to your docker-compose.yml file and start the EPL container.

Some more technical information what the installation is actually doing

  • the package will install docker, docker-compose and MariaDB-server, if not already installed
  • it will install a docker-compose file and some Apache and Nginx config files in /etc/egroupware-docker:
  1. docker-compose.yml starts the docker containers
  2. egroupware-nginx.conf is the configuration of the internal Nginx container
  3. apache.conf or nginx.conf are the configuration for the webserver on the host
  • EGroupware files will be store (as usual) in /var/lib/egroupware on the host
  • it will start the following container:
  1. egroupware Ubuntu 18.04 based container with PHP 7.3 FPM and the EGroupware sources
  2. egroupware-nginx Alpine based container with internal Nginx server
  3. egroupware-watchtower automatic updating all containers to new version, if available, at 4am daily

Access to services (LDAP, IMAP, SMTP, ...) running on the host / localhost

As EGroupware is running in a container, it's localhost is not the same as the host. So if eg. your LDAP is configured in EGroupware setup to run under localhost or 127.0.0.1, you need to change that to the IP address of the host, or the hosts address on the docker0 bridge, usually 172.17.0.1.

To do so go to http(s)://your.host-or-ip/egroupware/setup/ and use the upper login box with the credentials from /var/lib/egroupware/egroupware-docker-install.log. Then click on [Edit current configuration] and change the LDAP host to 172.17.0.1

How to install third party or deprecated apps or update from before 14.3

The following apps, which are deprecated since 14.3, are no longer part of 19.1:

  1. egroupware-epl-wiki
  2. egroupware-epl-sitemgr
  3. egroupware-epl-phpbrain
  4. egroupware-epl-compat (required for update from before EGroupware 14.3!)
  5. egroupware-epl-groups (Group administration for long term CE users)

They can however be installed from 17.1 repo or are kept in case of an update.

They will work with the 19.1 container, as docker-compose.yml passes /usr/share/egroupware from the host into the container as /usr/share/egroupware-extra. The container entrypoint script copies them into the volume shared between egroupware container and Nginx.

This mechanism can also be used to add arbitrary third-party apps to an EGroupware running in a container:

mkdir -p /usr/share/egroupware
cd /usr/share/egroupware
git clone <git-url>
docker restart egroupware

Old templates/themes

With the package installation (Docker container) we no longer deliver old templates/themes (e.g. jdots).

The default template is available as :

  • Default
  • Compact
  • Mobile
  • Monochrome

With these templates you can set some things up for yourself: colors, logos, names, login screen, …

How to view error-log of the webserver

In case of an error you can look at the error log with the following command:

docker logs -f egroupware-nginx 2>&1 | sed 's/PHP message/\nPHP message/g'

How to install Collabora Online Office

If you use RHEL/CentOS and Collabora is not installed by default, or you choose not to install it at first, you can add Collabora by installing our egroupware-collabora-key package.

If you prefer to use / test with CODE Collabora Online Development Edition you can change the container image in from "quay.io/egroupware/collabora-key:stable" to "collabora/code:latest":

cd /etc/egroupware-collabora-key
sed -i 's#quay.io/egroupware/collabora-key:stable#collabora/code:latest#g' docker-compose.yml
docker-compose up -d
docker cp /var/lib/egroupware/default/loolwsd/loolwsd.conf egroupware-collabora-key:/etc/loolwsd
docker-compose restart

(Please note that CODE is limited in the number of concurrent users, while our image supports the licensed number of users.)

How to install Rocket.Chat

Rocket.Chat is no longer installed by default, as for an automatic OAuth configuration we need to know the domain name EGroupware and Rocket.Chat are using.

Full installation instructions are under Rocket.Chat Integration.

Clone this wiki locally