CentOS on Docker: How to install doc files

centosdockeryum

I’m trying to install the Kolab groupware in a Docker container based on CentOS 6.5. At first glance, the installation of the official packages seemed to work without problems. But afterwards, when I tried to run the setup script, several errors occurred. After doing some research, I found out, that the setup script tries to use an sql schema file, located in /usr/share/doc/kolab-webadmin-3.1.5. According to repoquery -l kolab-webadmin, the sql file is indeed included in the package. It is, however, not installed.

I suspect that this is somehow a “feature” of Docker, which tries to avoid the installation of unnecessary documentation files into the container, but could not find any information about it.

Is there a way to install the missing files through yum?


Update:

Here is a minimal example to illustrate the problem:
First create a new centos container:

docker run -t -i centos:centos6 /bin/bash

Inside, install the yum-utils package:

yum install -y yum-utils

Afterwards, if you use repoquery to inspect the contents of the yum-utils package

repoquery -l yum-utils

you will notice that the package contains files under /usr/share/doc/yum-utils-1.1.30.
This folder, however, does not exist.

Best Answer

I found out why the docs are not installed: it is not a feature of Docker but of the CentOS Docker image. Yum and rpm configs both contain options that prevent the installation. They may be disabled by adding the following lines to the Dockerfile:

RUN sed -i '/excludedocs/d' /etc/rpm/macros.imgcreate
RUN sed -i '/nodocs/d' /etc/yum.conf
Related Question