如何在centos6.6 docker容器中安装最新版本的make

时间:2016-10-29 17:24:02

标签: docker docker-compose dockerfile docker-machine

我希望在docker容器中为centos6.6提供3.82或更新版本的make

[root@046f4766b93f build]# make --version
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for x86_64-redhat-linux-gnu

有人可以告诉我如何在我的docker容器中使用yum在centos6.6上安装最新的make版本?

[root@046f4766b93f build]# yum install make
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: mirrors.unifiedlayer.com
 * extras: centos.mirrors.hoobly.com
 * updates: mirrors.kernel.org
Package 1:make-3.81-23.el6.x86_64 already installed and latest version
Nothing to do

1 个答案:

答案 0 :(得分:1)

您可以按照this page上列出的步骤进行操作。它使用位于CentOS 6存储库中的Russian Fedora Fixes的RPM,但请注意这一点。

我尝试过这样做并且有效:

# docker run --rm -it centos:6.6 bash
[root@1857c0d2c37b /]# yum -y update
[root@1857c0d2c37b /]# curl http://mirror.yandex.ru/fedora/russianfedora/russianfedora/fixes/el/releases/6/Everything/i386/os/russianfedora-fixes-release-6-2.R.noarch.rpm > russianfedora-fixes-release-6-2.R.noarch.rpm
[root@1857c0d2c37b /]# rpm -Uvh russianfedora-fixes-release-6-2.R.noarch.rpm
[root@1857c0d2c37b /]# yum install -y make

之后,make的版本为 3.82

[root@1857c0d2c37b /]# make --version
GNU Make 3.82
Built for x86_64-redhat-linux-gnu
Copyright (C) 2010  Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

如果您想将它放在容器中,只需将命令放入Dockerfile,如下所示:

FROM centos:6.6

WORKDIR /root

RUN yum -y update && yum clean all; \
    curl http://mirror.yandex.ru/fedora/russianfedora/russianfedora/fixes/el/releases/6/Everything/i386/os/russianfedora-fixes-release-6-2.R.noarch.rpm > russianfedora-fixes-release-6-2.R.noarch.rpm && \
    rpm -Uvh russianfedora-fixes-release-6-2.R.noarch.rpm && \
    yum install -y make

CMD bash

然后构建并运行您的图像。

通过rpmfind.net查看包裹,make 3.82显示CentOS 7。我也尝试安装那个,但是有太多未满足的依赖项。