手当たり次第に書くんだ

飽きっぽいのは本能

Docker コンテナを自作する #1 Ubuntu ベースイメージ

Docker のベースイメージを自作する考え方を整理します。既存イメージを使うだけで十分な場面も多いですが、企業内や閉域環境では、タイムゾーン、証明書、基本パッケージ、内部レジストリを含めた標準ベースを用意したいことがあります。

Dockerfile

FROM ubuntu:22.04

RUN apt-get update     && DEBIAN_FRONTEND=noninteractive apt-get -y upgrade     && DEBIAN_FRONTEND=noninteractive apt-get install -y ca-certificates tzdata     && ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime     && echo Asia/Tokyo > /etc/timezone     && apt-get clean     && rm -rf /var/lib/apt/lists/*

ビルド

docker build -t harbor.example.local/library/ubuntu-22.04-base:1.0.0 .
docker images harbor.example.local/library/ubuntu-22.04-base

確認

docker run --rm harbor.example.local/library/ubuntu-22.04-base:1.0.0 cat /etc/os-release
docker run --rm harbor.example.local/library/ubuntu-22.04-base:1.0.0 date

push

docker login harbor.example.local
docker push harbor.example.local/library/ubuntu-22.04-base:1.0.0

まとめ

ベースイメージを自作する目的は、独自性を出すことではなく、組織内で共通化したい前提を固定することです。肥大化を避け、タイムゾーン、証明書、最低限のパッケージに絞ると運用しやすくなります。

Docker コンテナを自作する #1 Ubuntu ベースイメージ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る