Docker 上的 CentOS:如何安裝 doc 檔案?

Docker 上的 CentOS:如何安裝 doc 檔案?

我正在嘗試在基於 CentOS 6.5 的 Docker 容器中安裝 Kolab 元件。乍一看,官方軟體包的安裝似乎沒有問題。但後來,當我嘗試運行安裝腳本時,出現了幾個錯誤。經過一些研究後,我發現安裝腳本嘗試使用位於/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 下的檔案。但是,該資料夾不存在。

答案1

我找到了為什麼沒有安裝文件:它不是 Docker 的功能,而是 CentOS Docker 映像的功能。 Yum 和 rpm 配置都包含封鎖安裝的選項。可以透過將以下行新增至 Dockerfile 來停用它們:

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

相關內容