我正在尝试从如下所示的最小模板构建 CentOS 7 Docker 容器
FROM centos:AUTO_SELECT_VERSION
RUN yum -y install yum-plugin-ovl \
&& yum -y install lsof perl file tar gzip gdb \
bzip2 openssh rsyslog psmisc initscripts \
strace tcpdump gcc
ADD rsyslog.conf /etc/rsyslog.conf
ADD elementtree-1.2.6-20050316.tar.gz /tmp/
但在我的虚拟机上继续面临这个glibc
依赖错误。抱歉,我无法将错误复制粘贴为文本,但目前只有这个
glibc
以下是我的主机虚拟机上安装的 header/commons版本
rpm -qa | grep glibc
glibc-devel-2.17-260.el7_6.6.x86_64
glibc-headers-2.17-260.el7_6.6.x86_64
glibc-2.17-260.el7_6.6.i686
glibc-2.17-260.el7_6.6.x86_64
glibc-common-2.17-260.el7_6.6.x86_64
我不确定这是否是glibc
我的虚拟机上安装的 32 位和 64 位软件包之间的依赖关系。我对构建此类容器相对较新,因此希望得到一些反馈。
答案1
问题是您的一个软件包尝试安装glibc-2.17-260.el7_6.5.i686
,这需要完全相同版本的glibc-common
.然而glibc-common
已经安装了稍微高级的版本号;从哪里它失败了。
你能做什么?
- 如果您的存储库中有可用的版本,则降级
glibc-common
到完全相同的版本 - 确保
glibc*i686
您的存储库中的版本与glibc-common
;相同也许安装epel-释放存储库将帮助您解决这个问题:
首先安装 epel-release:
RUN yum -y install epel-release\
&& yum -y install yum-plugin-ovl\
...