CentOS на Docker: как установить doc файлы?

1279
AbuBakr

Я пытаюсь установить групповую программу Kolab в контейнере Docker на базе CentOS 6.5. На первый взгляд установка официальных пакетов вроде бы работала без проблем. Но потом, когда я попытался запустить скрипт установки, произошло несколько ошибок. Проведя некоторые исследования, я обнаружил, что сценарий установки пытается использовать файл схемы sql, расположенный в /usr/share/doc/kolab-webadmin-3.1.5. По словам repoquery -l kolab-webadmin, файл sql действительно входит в пакет. Это, однако, не установлено.

Я подозреваю, что это как-то «особенность» Docker, который пытается избежать установки ненужных файлов документации в контейнер, но не может найти никакой информации о нем.

Есть ли способ установить недостающие файлы через yum?


Обновление :

Вот минимальный пример, иллюстрирующий проблему: сначала создайте новый контейнер centos:

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

Внутри установите пакет yum-utils:

yum install -y yum-utils 

Впоследствии, если вы используете repoquery для проверки содержимого пакета yum-utils

repoquery -l yum-utils 

вы заметите, что пакет содержит файлы в каталоге /usr/share/doc/yum-utils-1.1.30. Эта папка, однако, не существует.

2
Пожалуйста, попробуйте перефразировать ваш вопрос, добавив более подробную информацию: какое ** изображение ** вы используете, как вы создаете экземпляр своего ** контейнера ** (и если эти термины не имеют большого значения для вас, обратитесь к [документации Docker]) (https://docs.docker.com/userguide/)). Если возможно, пожалуйста, укажите и укажите, какой Dockerfile вы используете, на основе какого изображения. deucalion 10 лет назад 1
В `docker` нет ничего такого, что ограничивало бы` yum` для установки некоторых пакетов или файлов. beginer 10 лет назад 0

1 ответ на вопрос

4
AbuBakr

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 

Похожие вопросы