在RHEL5.5或CentOS5.5上做功能验证

如果你有幸碰到需要在比较老的Linux系统上面部署你的软件,那么在部署之前,免不了需要在本地做一下测试,但现在网上已经很难下到RHL5.5的安装包了。但山穷水尽疑无路,柳暗花明又一村,dockerhub上还有人做了这样的一个image,不用说,其意图,果然是用于做测试。
安装了docker的朋友可以通过以下命令获取该image:

docker pull gpmidi/centos-5.5

多说两句关于centOs和Redhat的关系,其实CentOS和Redhat是一样的一份源码,只是商业许可证不一样,Redhat是商用的,CentOS的开源的许可。同时,它们的版本号是一样的 ,即CentOS 5.5和RHEL 5.5是同样的源码,在CentOS上测试通过的软件在RHEL 5.5上一样肯定能跑。

回到我们的这个image。这个image上,默认是没有安装vi的。因此,通过docker运行起来之后:

docker run -it gpmidi/centos-5.5 /bin/bash

你会在客户端中发现没有vi。没有vi意味着你没法修改你的配置,用于测试。这时,你需要通过yum install vim去做安装升级。
但因为5.5的版本太旧,此时你运行yum install,系统会有如下提示:

Loaded plugins: allowdowngrade, downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
 Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/addons/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: addons

此时,你需要修改/etc/yum.repos.d/CentOS-Base.repo文件为:

[base]
name=CentOS-$releasever - Base
baseurl=http://vault.centos.org/5.11/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://vault.centos.org/5.11/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://vault.centos.org/5.11/extras/$basearch/

gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

可是你没有vi啊,怎么办呢?
那就将本地目录挂载到docker容器中:

docker run -it --name cs5.5 --mount type=bind,source=~/tmp,target=/tmp  gpmidi/centos-5.5 /bin/bash

在本地目录~/tmp目录中,编写一个CentOS-Base.repo,再在容器里拷贝到/etc/yum目录下

猜你喜欢

转载自blog.csdn.net/u013613428/article/details/79150765