尝试在已停止支持的CentOS6上安装docker-compose
首先
基本上基於安全的考慮,最好使用最新的操作系统和最新的軟件包。然而,由於種種原因,有時候無法這麼做。因此,為了自己的備忘,我會保留這篇文章。
※ 因為要使用停止支援的軟件,所以無論發生什麼情況,都要自負風險。
在考虑上,旧操作系统只与旧软件包兼容,因此重要的是要升级版本以进行安装。
环境和使用的物品
-
- Windows11
-
- Oracle VM VirtualBox
- Vagrant
安装的方法
-
- 创建Vagrantfile等文件
cmd
vagrant init bento/centos-6.7
touch install-docker-compose.sh
touch docker-compose.yml # 仅用于测试,与安装docker-compose无关
添加脚本文件执行设置
Vagrantfile
config.vm.provision “shell”, path: “install-docker-compose.sh”
创建安装脚本※这里是重点
install-docker-compose.sh
#!/bin/sh -x
sudo cp -p /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
sudo sed -i -e “s/^mirrorlist=http:\/\/mirrorlist.centos.org/#mirrorlist=http:\/\/mirrorlist.centos.org/g” /etc/yum.repos.d/CentOS-Base.repo
sudo sed -i -e “s/^#baseurl=http:\/\/mirror.centos.org/baseurl=http:\/\/ftp.riken.jp\/Linux\/centos-vault/g” /etc/yum.repos.d/CentOS-Base.repo
sudo yum install -y https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm
sudo service docker start
# docker-compose 1.5.2 (支持CentOS6的最终版本)
sudo wget https://github.com/docker/compose/releases/download/1.5.2/docker-compose-`uname -s`-`uname -m` -O /usr/local/bin/docker-compose -q
sudo chmod +x /usr/local/bin/docker-compose # 授予执行权限
/usr/local/bin/docker-compose -v # 应显示版本号
sudo usermod -aG docker vagrant # 允许vagrant用户执行docker-compose
/usr/local/bin/docker-compose -f “/vagrant/docker-compose.yml” up -d # 仅用于测试,与安装docker-compose无关
创建用于测试的docker-compose.yml※语法较旧
docker-compose.yml
# 用于MailCatcher的容器
mailcatcher:
image: schickling/mailcatcher
ports:
– “1080:1080”
– “1025:1025”
restart: always
启动虚拟机
cmd
vagrant up
感受
如果试图使用已经停止支持的东西,就会遇到存储库链接失效的问题,非常麻烦。
在这种情况下,有些地方在支持结束后仍然向我们提供存储库,非常感激。但是,我也担心他们会将其公开多久。
如果我的努力记录在这次特殊情况下能够对那些感到困扰的人有所帮助,我将非常高兴。
参考にさせていただいた記事などのLink集
https://qiita.com/tukiyo3/items/7621e610119e8344ff17
https://ex1.m-yabe.com/archives/5066
https://teratail.com/questions/538ut77715pp8j
https://chusotsu-program.com/docker-mail-catcher/
etc…
試してみたけどうまくいかなかった方法
vagrant-docker-compose を使用した方法 ⇒ yum updateしてと言われてやったけどうまくいかなかったので断念
オフラインでインストールする方法 ⇒ CentOS6に適合する古いバージョンを探すことが出来なかったので断念
(docker-17.03.0-ce.tgz や docker-18.09.0.tgz を試したけどカーネルのバージョンが古いって言われた)
etc…