Skip to content

Installation using EGroupware docker RPM DEB package

StefanU edited this page Sep 24, 2023 · 1 revision

Please note:

General

The installation is based on Docker, even for the DEB or RPM packages. The only requirement for the host system is Docker.

Since 20.1 EGroupware contains an additional push-server container and runs - for new installations - MariaDB 10.6 in a container too.

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.

Major differences from a 21.1 installation

  • TypeScript&JavaScript build process and loading is completely new and significant different compared to 21.1:
    • 23.1 currently requires a browser capable of ES2020, which is no problem for recent desktop browsers, but it is not available on older Apple device which are not supported to update beyond iOS/Safari 14. We plan to support them in one of the next maintenance releases.
    • 3rd party apps may require some adaption to the new JS loading. The container entrypoint includes their js/app.{ts,js} in the build.
  • 23.1 is only available with PHP 8.1 and 3rd party apps or our deprecated apps (Wiki & KnowlegeBase) require some adaption to work with PHP 8.1
  • MariaDB container is updated to version 10.6 (unless you have an updated installation still using the database on the host)
  • Group administration is again be part of the community version (no longer need EPL or the separate groups app!)

Other significant changes from before 21.1

Installation or update

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 22.04, for other distributions use the above link. This is NOT necessary if you update, unless you use EPL before 19.1, which used a different repo.

echo 'deb http://download.opensuse.org/repositories/server:/eGroupWare/xUbuntu_22.04/ /' | sudo tee /etc/apt/sources.list.d/server:eGroupWare.list
sudo apt install gnupg # required, but not installed by apt-key add in Debian 10/11
wget -nv https://download.opensuse.org/repositories/server:eGroupWare/xUbuntu_22.04/Release.key -O - | sudo apt-key add - | sudo tee /etc/apt/trusted.gpg.d/server:eGroupWare.asc
sudo apt update

(replace 22.04 with 20.04, 18.04 or 16.04, or xUbuntu_20.04 with Debian_10 or Debian_11)

EGroupware 23.1 is also available in the Univention App Center.

To upgrade in place from 21.1 or earlier

apt upgrade

Use the default to NOT replace config-files, if you are asked. The update script takes care of all necessary changes!

For a new 23.1 installation

apt install egroupware-docker

If you prefer to use Apache2 on the host as proxy, add apache2 to the above install command.

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. Of course you can always deinstall it 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 course 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.override.yml file and start the EPL container.

Some more technical information what the installation is actually doing

  • the package will install docker, docker-compose, if not already installed and create (or update) the following files in /etc/egroupware-docker:
  • nginx.conf config for using Nginx as proxy on the host, symlinked to /etc/nginx/conf.d/egroupware.conf
  • apache.conf config for using Apache2 on the host, symlinked to /etc/apache2/sites-{enabled,avalable}/egroupware.conf
  • docker-compose.override.yml for local modifications with many commented out examples (contains your 19.1 docker-compose.yml in case of an update!)
  • .env contains root password of MariaDB container
  • mariadb.cnf file to overfide MariaDB configuration in the container
  • docker-compose.yml, latest-*.yml or create-override.sh do NOT modify!
  • use-epl.sh script to update to EPL (EGroupware GmbH subscription version)
  • mysql.sh run mysql command on MariaDB running in egroupware-db container (can be copied to mysqldump.sh too!)
  • egroupware-logs.sh tail EGroupware's error-log
  • EGroupware files will be store (as usual) in /var/lib/egroupware on the host
  • it will start the following container:
  1. egroupware Ubuntu 20.04 based container with PHP 8.1 FPM and the EGroupware sources
  2. egroupware-db MariaDB 10.6 container (unless you update and used the DB from the host before)
  3. egroupware-push PHP Swoole 8.1 endpoint of all websocket connections
  4. egroupware-nginx Alpine based container with internal Nginx server
  5. 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

EGroupware 23.1 comes with PHP 8.1 and these apps require some adaption or might NOT work anymore (eg. SiteMgr). For more information please check this page.

Clone this wiki locally