Dockerイメージは、Dockerfileで作成することもできるが、コンテナの中に入ってインストールした結果をイメージとして保存することもできる。

今回はCentOS7のコンテナにログインし、PHPをインストールしたイメージを作成する例を紹介する。

CentOSコンテナにログイン

まず、以下のコマンドでコンテナにログインする。

docker run -it centos:7 /bin/bash

イメージが存在しない場合はダウンロードから始まり、その後コンテナが起動しログインされた状態になる。

PHPのインストール

次にyumでPHPをインストールする。
ログイン状態で以下のコマンドを実行する。

yum -y install php

インストールが完了したらexitでコンテナからログアウトする。

Dockerイメージの作成

先ほどPHPをインストールしたcentosコンテナのコンテナIDを確認する。

docker ps -a

コンテナIDをコピーしておき、次のコマンドでコンテナIDを指定する。

docker commit $コンテナID php:ver1.0

docker commitコマンドはイメージ作成コマンドで、コンテナIDの後には「イメージ名:タグ」の形式で任意の値を指定することができる。

最後に作成されたイメージを確認しよう。

docker images

これでコンテナ環境をベースに、オリジナルのイメージを作成することができる。