Meine Installation EGroupware 19.1 auf Debian 10
Comments and questions about the article should be posted as new topics in the forum! The topic is closed and you cannot answer it.
Hello, everyone.
I would like to document here why and how I reinstalled my private EGroupware installation.
This installation can of course also be used to migrate/update older EGroupware. To the additionally necessary step I have written something at the end.
Why did I reinstall?
I had already updated my 17.1 installation to 19.1 and worked with it for weeks.
For the installation I chose a Ubuntu server because I wanted to use a Nginx as webserver. I also wanted to get the last bit of performance out of it. Furthermore I wanted to use a very current PHP and SSL. So a very secure SSL configuration and switching on HTTP/2 should be possible. All this was possible with a Ubuntu.
By the new constellation with EGroupware in a Docker container I saw now the possibility to install a slim Debian for me as host system. This does not carry so much (for me) useless ballast from Canonical around. I don’t like a few administrative things either.
During the installation I decided for an Apache as reverse proxy on the host, because it doesn’t play a big role for the performance anymore.
Now I want to describe the installation/migration step by step. It took me about 2 hours. It takes a little longer than before (17.1 = 1 hour complete), because I directly installed the Collabora online and Rocket.chat containers. With my I-Net line…
Thus I describe here a standard installation under optimal conditions.
And please note: This is MY way to install. There are plenty of ways to do things differently.
Given:
domain
An own domain with a sub-domain (which is provided with my changing IP via DDNS)
port forwarding
On my router, ports 443 and 80 port forwarding are set up for (my EGw).
Proxmox-VE server
I am installing on my Proxmox server. This is an older Dell Optiplex 790 with 8GB RAM, SSD, 2 core (4 HT). In parallel there are a UCS, a mail server, a wiki and temporary test systems.
After essential installation/configuration steps I make a full backup.
Installation Debian 10
For installation I use a Debian netinstall-ISO:
https://www.debian.org/CD/netinst/
As hardware I configure first of all:
32GB hard disk
2 core
2GB RAM
I perform a “standard installation” with the appropriate language and disk settings.
Finally, I choose a minimum of software:
Installation of additional software
I install my additional software, which I need for my work on the system:
mc
For working on the console
ddclient
To provide my sub-domain with my current IP address
qemu-guest-agent
For my Proxmox KVM virtualization. Shows me the current IP of the VM.
net-tools
I can’t detach myself from ifconfig
yet…
gnupg
Required for the installation of repo keys
htop
Better than top…
All together:
apt install mc ddclient qemu-guest-agent net-tools gnupg htop -y
ddclient asks for some configuration data during the installation. First of all, I specified them somehow. I neither copy the resulting configuration file from the old system.
I want to access the system via ssh. That’s why I change (with support from mc) in the
/etc/ssh/sshd_config
#PermitRootLogin prohibit-password
=>
PermitRootLogin yes
This allows root access from outside the system.
This should only be done by those who really want it and the environment allows it. With a system that is directly connected to the Internet, this is forbidden. You then have to work with the unprivileged user you created during the installation.
A restart of ssh
service sshd restart
activates the setting and I can access the installation via ssh. So I can also copy and paste in a local terminal window
Webmin (optional)
An web-based graphical admin tool. I’m not a command line guru.
Installation from the Webmin-Repo: http://www.webmin.com/deb.html
Installing and using Webmin always involves an additional security risk. You always have root privileges on your system. The same applies as for external access via ssh: Use only in secure environments. Directly connected to the Internet or in the company/at home as an exposed server, this is forbidden!
Installation EGw
I enter the repo, import the key and update the apt-db:
echo 'deb http://download.opensuse.org/repositories/server:/eGroupWare/Debian_10/ /' > /etc/apt/sources.list.d/server:eGroupWare.list
wget -nv https://download.opensuse.org/repositories/server:eGroupWare/Debian_10/Release.key -O Release.key
apt-key add - < Release.key
apt update
Up to here the hard disk is occupied with ~2 GB.
I install EGw 19.1 with
apt install egroupware-docker -y
This will install EGw 19.1 with Apache as reverse proxy and Maria-DB as database.
This will take some time now. With something over 4Mbit/s especially…
The installation took about 30 minutes.
The additional packages require ~500 MB of additional disk space. In addition there are the docker containers.
After installation, the hard disk is occupied with ~8.5 GB. The backup on the Proxmox server is ~4GB large and is backed up in 01:22 minutes.
The RAM requirement is 1.6 GB with all running containers.
A docker ps
shows:
SSL certificate
I have described this in detail here:
Installation of EPL components
Since I have an EPL license, I install the additional EPL components as described here:
Post-installation old apps
I still use old, deprecated apps that are no longer included in the standard delivery. The installation is documented:
This will install the wiki and the knowledge database.
Import database
The installation of everything I need is done. Now it is time to import the EGw database from my “old system” into the new installation.
I just do a backup on the old system:
To copy I need both systems switched on. To do this I changed the IP address in the old system. Now I can copy the data via mc/ssh:
So I copied the backup files as well as my VFS files.
Now I can shut down the old installation. On the new one I restore the last database backup:
Last but not least I have to restore my background pictures and the fav icon.
Done!
Docker-tools
I have written a topic about it:
https://help.egroupware.org/t/uk-docker-tools/74121
Upgrade from <19.1
For an upgrade from a version prior to 19.1 (e.g. 17.1) I can simply install the backup of the old version. This should not cause any problems with a 17.1. The further back the version is, the longer it was in use and the more “fiddled around” with it, the greater is the risk that something goes wrong. This is in the nature of things. But there have also been some successful 1.4 and 1.8 versions recently.
In any case, you should check everything again in the setup.