694241ad77
This started with me wondering why gerritbot was putting all its output into /var/log/syslog -- it turns out Xenial docker is configured to use journalctl (which forwards to syslog) and Bionic onwards uses json-file. Both are sub-optimial; but particularly the json-file because we lose the logs when the container dies. This proposes moving to a more standard model of having the containers log to syslog and redirecting that to files on disk. Install a rsyslog configuration to capture "docker-*" program names and put them into logfiles in /var/log/containers. Also install rotation for these files. In an initial group of docker-compose files, setup logging to syslog which should then be captured into these files. Add some basic testing. If this works OK, I think we can standardise our docker-compose files like this to caputure the logs the same everywhere. Change-Id: I940a5b05057e832e2efad79d9a2ed5325020ed0c
28 lines
788 B
ReStructuredText
28 lines
788 B
ReStructuredText
An ansible role to install docker in the OpenStack infra production environment
|
|
|
|
This also installs a log redirector for syslog ```docker-`` tags. For
|
|
most containers, they can be setup in the compose file with a section
|
|
such as:
|
|
|
|
.. code-block:: yaml
|
|
|
|
logging:
|
|
driver: syslog
|
|
options:
|
|
tag: docker-<appname>
|
|
|
|
**Role Variables**
|
|
|
|
.. zuul:rolevar:: use_upstream_docker
|
|
:default: True
|
|
|
|
By default this role adds repositories to install docker from upstream
|
|
docker. Set this to False to use the docker that comes with the distro.
|
|
|
|
.. zuul:rolevar:: docker_update_channel
|
|
:default: stable
|
|
|
|
Which update channel to use for upstream docker. The two choices are
|
|
``stable``, which is the default and updates quarterly, and ``edge``
|
|
which updates monthly.
|