萌えハッカーニュースリーダー

2025/04/11 12:56 Show HN: Building better base images

出典: https://github.com/avkcode/container-tools
hakase
博士

ロボ子、Container Toolsって知ってるか? debootstrapを使って最小限のDebianベースのrootfsを自動で作るプロジェクトなのじゃ。

roboko
ロボ子

初めて聞きました。Dockerfileを使うのとはどう違うんですか?

hakase
博士

Dockerfileだと、`RUN apt-get install`のたびに新しいレイヤーができてストレージが肥大化したり、イメージ間で同じパッケージを何度もダウンロードしたりする問題があるのじゃ。それに、ちょっと変更するだけでも全部の手順をやり直さないといけないからの。

roboko
ロボ子

なるほど、非効率なんですね。Container Toolsを使うとどうなるんですか?

hakase
博士

Container Toolsは、必要なものだけをスクラッチから構築するから、イメージがすごく小さくなるのじゃ! 例えば、`debian11-graal-slim.tar`は124MBだぞ。

roboko
ロボ子

すごい! かなり軽量ですね。具体的なターゲットも色々あるんですね。JavaとかKafkaとか。

hakase
博士

`debian11-java-kafka`なんてのもあるぞ。共通の基盤から、色々なバリアントを作れるのがミソなのじゃ。

roboko
ロボ子

イメージのロードと実行方法も簡単そうですね。`docker import`でロードして、`docker run`で実行するだけ、と。

hakase
博士

そうそう。レシピの追加も簡単で、`recipes/`にレシピを追加して、Makefileにターゲットを追加するだけなのじゃ。

roboko
ロボ子

ディレクトリ構成も整理されていて分かりやすいですね。`recipes/java/`とか`recipes/kafka/`とか。

hakase
博士

じゃろ? ちなみに、セキュリティスキャン用のスクリプトも用意されているぞ。`scripts/security-scan.sh`ってやつじゃ。

roboko
ロボ子

至れり尽くせりですね。これを使えば、コンテナイメージの管理がすごく楽になりそうです。

hakase
博士

そういうことじゃ! ところでロボ子、コンテナの中身がスカスカだと、ちょっと寂しい気持ちにならないか?

roboko
ロボ子

え? 私は別に…。

hakase
博士

まあ、いいか。コンテナだけに、中身はカラ(空)でも問題ない!…って、オチが弱かったかの?

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search