libreoffice-online/docker
Ashod Nakashian e1ff82324e docker: exec the startup script to intercept SIGTERM
Docker supports two methods of executing commands.
The existing approach was to run bash and give the
shell script to execute, which forks and execs another
shell instance to run the script. This means that the
script itself is not PID 1, rather the parent bash
instance is.
The second approach is to exec the script in the same
bash process, without a parent. This is exactly what
we want, because once our script is done, it execs
loolwsd, thereby making loolwsd PID 1.

All of this means that when the docker container is
stopped, and PID 1 is sent SIGTERM, loolwsd will
intercept it and gracefully shutdown.

Change-Id: I52ac63f7fba58d20d1c6f63c7e07dd18141c1af4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2021-10-12 09:36:33 +02:00
..
from-packages docker: exec the startup script to intercept SIGTERM 2021-10-12 09:36:33 +02:00
from-source docker: exec the startup script to intercept SIGTERM 2021-10-12 09:36:33 +02:00
README

Collabora Online docker

This directory contains everything needed to compile a
working docker container with Collabora Online.

Docker image can be built from packages or from source code.

Examples:

1. Build latest CODE based on Ubuntu 18.04 LTS

  cd from-packages
  docker build --no-cache -t mydomain/code -f Ubuntu .

2. Build Collabora Online 6.4

  cd from-packages
  docker build --no-cache --build-arg type=cool --build-arg secret_key=<....> -t mydomain/cool -f Ubuntu .

3. Build Collabora Online 4.2 based on RHEL8

  cd from-packages
  # Get your secret URL key from https://support.collaboraoffice.com/ (Collabora Partners/Customers)
  docker build --no-cache --build-arg version=4.2 --build-arg type=cool --build-arg secret_key=<....> -t mydomain/cool -f RHEL8 .

4. Build Collabora Online 6.4 license key enabled version

   cd from-packages
   docker build --no-cache --build-arg type=key -t mydomain/cool -f Ubuntu .

5. Build Collabora Online from master branch (from source code)

   cd from-source
   ./build.sh

Check build.sh for more build options!