For Rocket.Chat it is important to set the correct SITE_URL environment variable, so Rocket.Chat itself knows which URL you proxying into it’s container or installation. By default Meteor runs on localhost:3000 and can not do SSL terminations. So you need to configure the webserver on the host to proxy to Meteor/Rocket.Chat under a certain URL. We use /rocketchat/ or https://domain.com/rocketchat/ for that. The later is what you need to add to EGroupware site-configuration.
As EGroupware and Rocket.Chat talk to each other directly (Rocket.Chat Api access and OAuth token backchannel), they need to be able to reach each other (DNS resolution, network connectivity and certificate validation).
Unfortunately this is all not trivial and that is the reason why we decided to do all this in containers with a central (reverse-)proxy on the host …
About the EGroupware installation: the ZIP archive is not recommended as it’s hard / lot of effort to keep up to date. I would recommend a developer installation with git or an installation with just Composer. You can look at our Dockerfile for the correct syntax. Such an installation can be updated by calling ./install-cli.php:
cd /path/to/docroot
git clone -b 19.1 https://github.com/EGroupware/egroupware.git
cd egroupware
npm install
./install-cli.php
For the above to work you need git, Composer, npm and grunt installed. To update you just re-run install-cli.php
.
Or run Docker on a VM running Linux: http://www.gamsjager.nl/2019/01/11/How-to-run-Docker-on-FreeBSD-12/
Ralf