🪐
【備忘録】サポート終了したCentOS6.7のDockerイメージの作成
はじめに
CentOS6系はサポートが2020年11月に終わりました。ただ、CentOS6系で動かしているサービスなどを、Dockerに移したい要望がある際にはこのような方法を取るしかない場合もあります。
本記事では以下の2つの記事を参考にベースとなるDockerイメージを作成します。
Dockerfileと動作確認
ベースとなるDockerfileは以下の通りです。
FROM centos:centos6.7
RUN sed -i "s|#baseurl=|baseurl=|g" /etc/yum.repos.d/CentOS-Base.repo \
&& sed -i "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-Base.repo \
&& sed -i "s|http://mirror\.centos\.org/centos/\$releasever|http://ftp\.riken\.jp/Linux/centos-vault/6.7|g" /etc/yum.repos.d/CentOS-Base.repo
RUN yum -y install httpd
RUN echo "hello, world!" > /var/www/html/index.html
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]
変更点
1つ目の記事で、yumリポジトリの書き換えをしています。
yumリポジトリがアーカイブされているので、参照先を書き換えます。
ただ2つ目の記事の、以下の要因が重なってしまったことによって、リポジトリを書き換えてもうまくいかないようになってしまっています。
http://vault.centos.org/ は https://vault.centos.org/ にリダイレクトされますが、TLS v1.2 以上じゃないと接続できないようです。
CentOS 6のopensslはTLS v1.2に対応していないので、エラーになります。
そのため、元記事の書き換え内容を以下のように書き換えています。
RUN sed -i "s|#baseurl=|baseurl=|g" /etc/yum.repos.d/CentOS-Base.repo \
&& sed -i "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-Base.repo \
- && sed -i "s|http://mirror\.centos\.org/centos/\$releasever|http://vault\.centos\.org/centos/6.9|g" /etc/yum.repos.d/CentOS-Base.repo
+ && sed -i "s|http://mirror\.centos\.org/centos/\$releasever|http://ftp\.riken\.jp/Linux/centos-vault/6.7|g" /etc/yum.repos.d/CentOS-Base.repo
起動
以下のコマンドでビルドと実行をします。
$ docker buildx build --platform linux/x86_64 -t centos6.7:latest -f ./Dockerfile .
$ docker run --rm -d -p 80:80 centos6.7
そして、ブラウザからアクセスして、hello, world!
が表示されればOKです。
おわりに
あまり使われないことを望みますが、それでも誰かの参考になれば嬉しいです。
Discussion