HomeDevCentral

Enable Phabricator daemons

Description

Enable Phabricator daemons

Phabricator daemons aren't optimized not to be daemonized in production env.
Yet, runit wants processes to be spawned amongst a process hierarchy
runit scripts control.

We so offer a wrapper script to launch phd and stop it on proper signal.
We add it in the Docker image as /usr/local/bin/phd-wrapper

This script is then called by runit to manage phd.

Daemons run under the app user.

This change offers to keep runit as the main init process instead switching
to a in-house developped solution.


Known issue: at the very first container run, runit starts the wrapper script,
but no phd process is spawned.

To mitigate this behavior pending resolution, you can run the following command:
docker exec $INSTANCE_NAME sv restart phd

This is only appliable to the very first container run, each time you restart the
container, the wrapper script will behave correctly.

Details

Provenance
derecksonAuthored on
Parents
rDPHAB1e8e81f4ba2b: Enable APCu
Branches
Unknown
Tags
Unknown