今回はCentOS8のコンテナをカスタマイズしてみます。
- ■はじめに
- ■CentOS8の状態について
- ■カスタマイズ)rpmパッケージのインストール
- ■カスタマイズ後のコンテナについて
- ■カスタマイズ後のコンテナを使いまわしたい場合
- ■自分でコンテナイメージを作る
■はじめに
CentOS8 のコンテナは用意済みとします。
■CentOS8の状態について
CentOS用のdnfリポジトリ(yumリポジトリ)はコンテナ起動時から有効になっているため、dnfコマンドが使えます。
■カスタマイズ)rpmパッケージのインストール
適当にrpmパッケージをインストールしてみます。
パッケージは何でもいいのですが、今回はnet-toolsをインストールします。
■カスタマイズ後のコンテナについて
net-toolsパッケージをインストールしていますが、
コンテナが存在し続ける限り(※)はインストールしたものが消えるわけではありません。
※ docker rm でコンテナを削除しない限りはコンテナは存在し続けます。
つまり、コンテナを停止(docker stop)/起動(docker start)しても、
インストールしたnet-toolsパッケージはインストールされたままとなります。
■カスタマイズ後のコンテナを使いまわしたい場合
カスタマイズを毎回するのは面倒なので、
net-toolsパッケージがインストールされた状態のコンテナイメージがあると助かります。
ただ、DockerHubのCentOSにはそのようなものがないので(ないと仮定します)、
自分でコンテナイメージを作ることになります。
■自分でコンテナイメージを作る
1.以下コマンドを実行します。
# 書式
# docker commit コンテナID イメージ名:タグ名
docker commit 6e9a4a88e22e centos:centos-nettools
イメージ名、タグ名は好きなようにつけます。
コンテナIDはカスタマイズしたCentOSのものを使用します。
これで、カスタムイメージ(TAG列:centos-nettools)の作成が完了です。
2.カスタムイメージを利用してCentOSを起動します。
docker run -it --name centos83 centos:centos-nettools
カスタムイメージから起動したCentOSに、net-toolsがインストールされた状態であることが確認できました。
以上です。