SVX日記
2024-06-23(Sun) ディスクイメージサーバは爆速コンテナビルドの夢を見るか?
スレイヤと読むが、ドラゴンスレイヤではなく、ドラゴンズレアのモジりで、ソース(コード)の棲処を意味する「Source's Lair」。略して「's Lair」。元々はソースコードの閲覧が主な用途だった名残だ。で、3回目のリニューアルなので「's Lair III」まぁ、大層な名前の割には大したものではないけれど、歴代、LinuxOSのインストール、各パッケージのアプデ、ソースコードの調査などの作業を大幅に効率化してくれるので、職場で重宝されてきたサービスである。
リニューアルする主な理由はコンテナ化だ。それに伴い、pvにISOを置くだけで勝手にマウントしてHTTPアクセスできるようになる機能を加えた。ISOイメージの中身へHTTPアクセスできるということは、dnfのリポジトリサーバが務まるということだ。インストール後の、各パッケージのアプデに便利だ。んぁ? そこでフト思った。コンテナビルドの時のdnfによるパッケージインストールもそこからやらせられたりしないか? それが可能になれば、コンテナビルドが爆速になる気がするんだが。遠いオフィシャルリポジトリへのアクセスが不要になるのだから。
#!/bin/sh
 
rm /etc/yum.repos.d/*.repo
 
cat <<EOF >/etc/yum.repos.d/slair.repo
[slair]
name=Fedora 40 - x86_64
baseurl=http://hostname/indexes/discs/Fedora-Server-dvd-x86_64-40-1.14/
gpgcheck=0
EOFFROM fedora:40
 
ADD http://hostname/indexes/misc/setup_repo_rhelXX.sh /setup_repo_fedora40.sh
RUN bash /setup_repo_fedora40.sh
 
RUN set -x \
    && dnf install -y \
        ruby \
        procps-ng \
        iputils \
        iproute \
        diffutils \
        less \
    && rm -rf /var/cache/dnf/* \
    && dnf clean all
 :
 :今回、FedoraのServer版のISOを使ったのだが、中身を見ると大半のパッケージが入っていない。あぁ、そうか。Everything版のISOじゃないとな……と、思ったら、だいぶ前にその提供は終わっていたのであった。ちぇ……とはいえ、同じことをRHELでやる場合には問題なくできるはずなので、今回はそれでヨシとしよう。作った物件のgitリポジトリを以下に公開しておく。
https://itline.jp/git/slair
https://itline.jp/git/sinatra_skelton[ツッコミを入れる]


